The command is:
jar umf pathinfo.txt test.jar
The option used is "umf", test.jar is an existing jar file, which is created through Eclipse and contains only simple class information (... Using Eclipse here does not make any sense, as I can do it in command line directly). However, the main class needs to reference to a class defined in an external jar, which is not included in the "test.jar" package. "pathinfo.txt" is a file containing class path, which refers to the external jar's location. For example, it contains just one line:
Class-Path: lib/def.jar
"def.jar" is a jar containing definition of a class that I am referencing in the main class. "lib" is the directory it resides (for my current location).
Note that, you must have an extra enter after you type "Class-Path: lib/def.jar" when creating/editing this "classpath.txt" txt file. Otherwise, this "jar umf pathinfo.txt test.jar" will not update anything.
-----
Eclipse got sick... I could generate a jar file with provided correct manifest.mf (which contains the class path of an external jar) before. Suddenly, I could do it any more. Do not know why. Still inside the same project, just tried to add a new java class... Tried many times and none of them will create a jar file with class path info any more, even if I had already provided in a separate manifest file. OK, I gave up and went to check Jar online reference and found the command to update manifest file of an existing jar.
在使用Eclipse创建包含外部jar依赖的jar文件时遇到问题,通过使用jar umf pathinfo.txt test.jar命令更新manifest文件解决了问题。详细介绍了如何编辑pathinfo.txt文件来正确引用外部jar的位置。
6950

被折叠的 条评论
为什么被折叠?



