有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java无法在windows 8.1上运行javafx应用程序

我使用intellij idea制作了一个javafx桌面应用程序,并将其打包为this链接中给出的格式。它在我的装有Windows7的电脑上运行良好。但在windows 8.1上运行时,会出现以下异常:

java.lang.NullPointerException
        at com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(Unknown Sourc
e)
        at com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(Unknown Sourc
e)
        at com.sun.prism.impl.ps.BaseShaderGraphics.renderGeneralRoundedPgram(Un
known Source)
        at com.sun.prism.impl.ps.BaseShaderGraphics.renderGeneralRoundedRect(Unk
nown Source)
        at com.sun.prism.impl.ps.BaseShaderGraphics.fillRect(Unknown Source)
        at com.sun.javafx.sg.prism.NGRegion.paintTiles(Unknown Source)
        at com.sun.javafx.sg.prism.NGRegion.renderContent(Unknown Source)
        at com.sun.javafx.sg.prism.NGNode.doRender(Unknown Source)
        at com.sun.javafx.sg.prism.NGNode.doRender(Unknown Source)
        at com.sun.javafx.sg.BaseNode.render(Unknown Source)
        at com.sun.javafx.tk.quantum.ViewPainter.doPaint(Unknown Source)
        at com.sun.javafx.tk.quantum.AbstractPainter.paintImpl(Unknown Source)
        at com.sun.javafx.tk.quantum.PresentingPainter.run(Unknown Source)
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
        at java.util.concurrent.FutureTask.runAndReset(Unknown Source)
        at com.sun.prism.render.RenderJob.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(Unknow
n Source)
        at java.lang.Thread.run(Unknown Source)
java.lang.NullPointerException
        at com.sun.prism.impl.BaseResourceFactory.clearTextureCache(Unknown Sour
ce)
        at com.sun.prism.impl.BaseResourceFactory.getCachedTexture(Unknown Sourc
e)
        at com.sun.prism.impl.BaseResourceFactory.getCachedTexture(Unknown Sourc
e)
        at com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(Unknown Sourc
e)
        at com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(Unknown Sourc
e)
        at com.sun.prism.impl.ps.BaseShaderGraphics.renderGeneralRoundedPgram(Un
known Source)
        at com.sun.prism.impl.ps.BaseShaderGraphics.renderGeneralRoundedRect(Unk
nown Source)
        at com.sun.prism.impl.ps.BaseShaderGraphics.fillRect(Unknown Source)
        at com.sun.javafx.sg.prism.NGRegion.paintTiles(Unknown Source)
        at com.sun.javafx.sg.prism.NGRegion.renderContent(Unknown Source)
        at com.sun.javafx.sg.prism.NGNode.doRender(Unknown Source)
        at com.sun.javafx.sg.prism.NGNode.doRender(Unknown Source)
        at com.sun.javafx.sg.BaseNode.render(Unknown Source)
        at com.sun.javafx.tk.quantum.ViewPainter.doPaint(Unknown Source)
        at com.sun.javafx.tk.quantum.AbstractPainter.paintImpl(Unknown Source)
        at com.sun.javafx.tk.quantum.PresentingPainter.run(Unknown Source)
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
        at java.util.concurrent.FutureTask.runAndReset(Unknown Source)
        at com.sun.prism.render.RenderJob.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(Unknow
n Source)
        at java.lang.Thread.run(Unknown Source)

那么javafx在Windows8上不起作用了吗?我不认为它在任何地方都是这样的。毕竟它是一个典型的java应用程序,所以如果我们安装了jre,它应该可以工作

解决这个问题的办法是什么

编辑:

这里有一些奇怪的现象:

使用intellij idea 12.0.4构建的工件在windows 8上也运行良好。但是,当通过intellij idea 13.0.1构建时,就会出现错误


共 (0) 个答案