我在runnable .jar
(Eclipse
)上创建了一个right click on project --> export --> extract required libraries
文件,并将其保存到我的桌面。但是,当我双击它时文件doesn't run
,当我使用java -jar jarfilename.jar
消息显示为:
无法访问jarfile jarfilename.jar。
我试过了:
1.下载并运行Jarfix.exe
无济于事。
2.确保我有JDK和JRE(我有Java 7更新79,8更新5和8更新71; Java SE开发套件7更新79和8更新5)
非常感谢任何帮助。我正在使用Windows PC。
**编辑:尝试多个步骤后,我认为问题是没有正确指定.jar文件。我需要输入java -jar C:\ Path to File \ myJar.jar。
现在,如果我们可以弄清楚为什么双击不能让文件运行......
答案 0 :(得分:4)
这里可能会出现几个不同的问题:
您的操作系统/桌面是"运行"捷径。
所以在Windows上,你需要注册文件类型" jar"用Java:
您还需要一个"可运行的.jar文件"
这意味着你必须使用" main()"来指定类。您希望在导出.jar文件之前在MANIFEST.MF中运行:
最后,你需要实际"导出"来自Eclipse AS 一个.jar文件。仔细检查"导出"您从Eclipse运行并确保明确指定"导出为.jar"
附录: 你似乎做了几个额外的嘘声:
你做 NOT 想要" Eclipse>项目>出口>提取所需的库"。这会将无关的垃圾复制到.jar文件中。两个缺点:a)你的.jar可能会比它需要的更大(可能是 LOT 更大!),b)你可能会使你的.jar 不兼容你的Java运行时。不要这样做:)
对于错误cd \my\jar\directory
,您必须这样做:
a)%JAVA_HOME%\java -jar myjarfile.jar
b)%JAVA_HOME%\java -jar \my\jar\directory\myjarfile.jar
...或......
a)import numpy as np
import cv2
cap = cv2.VideoCapture("small.mp4")
fourcc = cv2.VideoWriter_fourcc(*'DIVX')
out = cv2.VideoWriter('output.avi',fourcc, 20.0,(560,320))
while(cap.isOpened()):
ret, frame = cap.read()
# shape of frame: (320L,560L,3L)
if ret==True:
gray_image = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
out.write(gray_image)
# shape of gray_image: (320L, 560L)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
else:
break
PPS:
如果仍然无法使其正常运行,请按照本教程进行操作:
http://www.mkyong.com/java/how-to-make-an-executable-jar-file/
使用命令提示符,按照 verbatim 的说明进行操作。回复您对教程的任何问题。一旦你使教程工作(并且你应该没有太多困难),你可以将它应用回原始的Eclipse项目。
请告诉我们您的发现!
答案 1 :(得分:0)
我假设您在导出向导中选择了WORKING运行配置?这将确保将正确的主类放入清单文件中。
一个jar文件只不过是一个“zip”。所以你应该可以打开它,例如7zip并查看其中的内容(类文件,清单等)。
请在执行java -jar jarfile.jar
时发布错误TY