rou*_*ble 38 java jar manifest.mf classpath
从我的读数来看,执行命令时如下:
java -jar foo.jar
Run Code Online (Sandbox Code Playgroud)
然后忽略主类路径,并从清单文件中获取类路径.
此外,还会忽略在命令行上声明的类路径.所以在:
java -classpath /usr/local/jar/foobar.jar -jar foo.jar
Run Code Online (Sandbox Code Playgroud)
/usr/local/jar/foobar.jar被忽略.
最后,我已经读过清单文件只能在jar文件中包含相对路径.
那么,如何包含系统中存在的外部jar的绝对路径,而不是正在执行的jar文件中?
mat*_*t b 40
你是否有理由避免像主要类一样调用主类
java -cp /usr/local/jar/foobar.jar:/some/other/path.jar com.your.main.classname
Run Code Online (Sandbox Code Playgroud)
?
这种类型的调用允许您将绝对路径与相对路径混合.将其放入shell脚本或批处理文件中,以避免实际输入或记住完整的类路径以简化操作.
Gau*_*ish 39
您可以在拥有jar文件的文件夹中创建一个文件夹,比如lib.
Manifest.MF内容可以是:
Main-Class: com.mastergaurav.test.app.MainClass
Class-Path: lib/one.jar lib/two.jar
Run Code Online (Sandbox Code Playgroud)
文件夹内容:
mainFolder/
* lib/one.jar
* lib/two.jar
* my-main.jar
Run Code Online (Sandbox Code Playgroud)
执行:
java -jar my-main.jar
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
87927 次 |
| 最近记录: |