【发布时间】:2014-07-07 22:19:34
【问题描述】:
我正在接管这个家伙的应用程序,他几乎没有给我留下任何东西,甚至没有评论编码。运气好(还有一点时间),我能够改进应用程序,让它在我的电脑上运行起来就像一个魅力。
但我遇到了一个烦人的问题,让我无法升级应用程序。我的应用程序可以在任何安装了 java 版本 1.7.0_21 的机器上正常运行,但是当我更新到较新的版本(现在是 1.7.0_60)时,应用程序无法运行,它只是一直出现这个愚蠢的错误,我做不到有什么可以解决的。
这是错误日志:
RenderJob.run: internal exception
java.lang.UnsatisfiedLinkError: com.sun.prism.d3d.D3DContext.nSetBlendEnabled(JZ
Z)I
at com.sun.prism.d3d.D3DContext.nSetBlendEnabled(Native Method)
at com.sun.prism.d3d.D3DContext.initState(D3DContext.java:84)
at com.sun.prism.d3d.D3DResourceFactory.<init>(D3DResourceFactory.java:5
7)
at com.sun.prism.d3d.D3DPipeline.createResourceFactory(D3DPipeline.java:
150)
at com.sun.prism.d3d.D3DPipeline.getD3DResourceFactory(D3DPipeline.java:
156)
at com.sun.prism.d3d.D3DPipeline.findDefaultResourceFactory(D3DPipeline.
java:182)
at com.sun.prism.d3d.D3DPipeline.getDefaultResourceFactory(D3DPipeline.j
ava:204)
at com.sun.prism.GraphicsPipeline.getDefaultResourceFactory(GraphicsPipe
line.java:97)
at com.sun.javafx.tk.quantum.QuantumRenderer$3.run(QuantumRenderer.java:
143)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask.runAndReset(Unknown Source)
at com.sun.prism.render.RenderJob.run(RenderJob.java:37)
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(Quantu
mRenderer.java:98)
at java.lang.Thread.run(Unknown Source)
我发现了另一个类似的问题 Unable to deploy JavaFX applicaiton with external libraries in a JAR 但我不能在我的情况下应用它,因为这个程序/框架需要从 .bat 文件(实际上是命令行)运行来创建一堆报告文件和文件夹。
【问题讨论】:
-
您是否将 javafx jar 添加到系统路径或类路径中?如果是这样,请删除相同的内容。
-
是的,我确实有一个外部 lib 文件夹,但如果我删除任何一个,应用程序将无法运行,因为我已经告诉我的应用程序在运行命令中查找类路径的位置