我正在制作一个2D游戏,我已编译成.jar来测试它是否有效。
使用java -jar
命令运行jar文件时,出现以下错误:
Error: Could not find or load main class com.grizeldi.splatoon.Main
我知道StackOveflow上有很多解决方案,但我尝试更新java,搞乱了-cp ......到目前为止没有任何工作。
代码:github repo
帮助任何人?
EDIT1:我的代码在USB记忆棒上,但我已经尝试将其移至C:和D:但没有任何效果。 EDIT2:我在github上添加了.jar。
答案 0 :(得分:1)
一种方法是使用类路径将Manifest更新为其他jar:
Class-Path: lib.jar
另一种方法是将主jar所依赖的jar的内容添加到主jar中,因此您只有一个jar文件。确保你没有将罐子本身添加到主罐子里,因为嵌套的罐子不起作用。
在处理本机库(.so
,.dll
)时,只需将它们放在与jar相同的目录中即可。这样做的缺点是你有多个文件。
在这种情况下,最简单的方法是添加启动脚本(.sh
,.bat
),指定类路径和Main的类名,以及-Djava.library.path
。
还有另一种方法:在运行时从jar中提取本机库,将其保存到临时位置,然后显式加载。有关详细信息,请参阅here。