【发布时间】:2015-12-09 08:10:15
【问题描述】:
我有以下直接结构:
mp1
├── lib
│ └── kryonet-2.21-all.jar
├── mp1.iml
├── out
│ ├── artifacts
│ │ └── UX
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ └── UX.jar
├── src
│ ├── [.class files]
│ └── cs425
│ └── mp1
│ ├── agent
│ │ ├── [handlers].java
│ ├── common
│ │ ├── [commons].java
│ ├── main
│ │ └── UX.java
│ └── network
│ ├── [networks].java
我对 mainfest 文件完全陌生,我只是想让.jar 在远程机器上运行。我的清单现在看起来像这样:
清单版本:1.0
主类:cs425.mp1.main.UX
但我只是不断得到,
~/mp1$ java -jar UX.jar
Error: Invalid or corrupt jarfile UX.jar
有什么帮助吗?我不确定要为我的外部库添加哪些选项以及如何定义我的类路径。
【问题讨论】:
-
清单末尾是否有空换行符?我不知道在较新的 Java 版本中这是否仍然是一个问题,但较旧的版本需要一个空行。
-
是的,有 - 我一开始在我的 IDE 中遇到了一个错误
-
什么意思,
src包含[.class files]?.class文件应该在.java文件旁边(不推荐),或者在不同文件夹下的类似目录结构中,例如bin或out。 --- 我也希望其他.java文件的名称中没有真正使用[括号]。 -
如果类文件都在
src文件夹中,那么你忘了在每个.java文件的开头指定package语句。
标签: java jar manifest executable-jar