我正在尝试使用Eclipse的Export函数构建一个可运行的JAR。一切正常,除了根目录下的几个.properties文件。
我将所有.properties文件添加到Build Path中,它们出现在Java Build Path对话框的'Order and Export'选项卡下。
但是,当我尝试运行导出时,出现以下错误:
无法读取JAR文件'log4j.properties'。原因:打开zip文件时出错 打开zip文件时出错 打开zip文件时出错
实际上创建了Runnable JAR文件,但其中没有.properties文件。为什么它尝试将.properties文件导出为ZIP文件?如何使这项工作?
Eclipse Build id:20090621-0832
答案 0 :(得分:4)
这是基于内存的,但我很确定属性文件不是从jar自动加载的。我们的想法是属性文件应该很容易修改。否则,值也可能只是在类文件中。
如果您尝试从其他任何位置访问属性文件,这应该不是问题。
这也是您很少看到单独打包jar文件的原因。通常还需要加载其他东西。
这种行为是否有必要?
答案 1 :(得分:1)
这就是我的工作,它可靠地运作:
<copy>
任务之前在同一目标中声明的<jar>
任务。我不确定Eclipse Export实用程序的功能,但您可以尝试查看ant,因为它可以让您更好地控制构建过程。
答案 2 :(得分:0)
将jar文件打包和/或压缩为ZIP文件,只更改文件扩展名。
当导出向导中显示所有属性时,它们会被选中吗?当你打开jar文件时,有一些文件? * .class,META-INF,......?
[]的,
过去
答案 3 :(得分:0)
您可以使用向导创建(普通)“JAR”文件,而不是使用“导出”向导创建“Runnable JAR”。在此向导中,您可以选择应将哪些特定文件添加到JAR文件中。
如果在向导中指定主类,则生成的JAR文件也将是可运行的(通过双击或使用java -jar myapp.jar
)。