(Windows 8.1)
这就是我构建.exe:
的方法转到此处,https://github.com/libgdx/packr
下载packr和.zip。我使用“javac -sourcepath $ SRC -d $ BIN”编译TestApp源代码。
类文件现在位于 bin> com> badlogicgames> packr 我去bin,创建manifest.txt读取“Main-Class:com.badlogicgames.packr.TestApp “
我创建了jar:jar -cvmf manifest.txt testapp.jar com jar被创建并运行良好。
我将jar移动到我正在使用的主文件夹,其中包含packr.jar和config.json
config.json
{
"platform": "windows",
"jdk": "C:/dev/resources/OpenJDK/openjdk-1.7.0-u60-unofficial-windows-i586-image.zip",
"executable": "testapp",
"appjar": "C:/dev/testapp/testapp.jar",
"mainclass": "com/badlogicgames/packr/TestApp",
"vmargs": [
"-Xmx1G"
],
"minimizejre": "soft",
"outdir": "build"
}
根据文档资源是可选的,所以我选择不使用它。我已尝试使用资源和资源文件夹和pom.xml在配置文件中的该部分的正确位置,但它得到相同的结果(运行exe什么都不做)
运行packr“java -jar packr.jar config.json”
我收到警告“SLF4J:无法加载类'org.slf4j.impl.StaticLoggerBinder'”
但是这个过程会继续,并且会创建一个exe。我在这个帖子上看到了:
据说修复了这个警告(还没试过,看起来相当复杂,因为我不确定我在哪里确实要添加到类路径中指定的.jars(回答者在运行'jar'时说的但是哪个jar他说的是我不能说))
但他说这只是“警告”而且看起来很无关紧要,所以我不确定.exe是不是在运行的原因。
这将是我的第一个问题,这是警告.exe不会运行的原因吗?
如果没有,这里有什么问题?我应该使用pom.xml和资源文件夹吗?
同样在那个问题中,一个名为“gouessej”的用户建议使用包含依赖项的打包器jar,当我下载并使用时会创建一个实际上作为一个进程启动几秒钟的exe。该程序仍然无法正常运行。
如果我可以让某人非常清楚地为我拼写,我必须做些什么才能让这个.exe工作,我会非常感激。
答案 0 :(得分:0)
https://github.com/libgdx/packr中的文档说,应该使用"来解析属性mainClass的类名。"分隔包名称。
所以,替换" /" by"。"在"mainclass": "com/badlogicgames/packr/TestApp"