我看到了running jar from command line .
但是我的情况有所不同。我将主类所需的 jar 放在 lib 文件夹下。所以我的 jar 是这样的:
lib
META-INF
VideoFieldsResults.class
在 META-INF 中我有:
Manifest-Version: 1.0
Main-Class: VideoFieldResults
当我尝试运行时:
java -jar VideoFormat.jar onBa32hgnBg,Lh-BKkLYYBU C:\VideoFormat2.csv
最后两个是我得到的参数:
Exception in thread "main" java.lang.NoClassDefFoundError: com/google/gdata/util
/ServiceException
它确实存在于其中一个 jar 下!
如何运行命令行来指定该 jar 需要 lib 文件夹下的所有 jar?
最佳答案
默认情况下,Java 无法从 jar 内加载 jar。为了实现这一点,您需要一个可以处理它的类加载器。例如One-Jar 。还有其他选项(取决于您如何设置将 jar 放入 jar 内,或者是否可以选择压平 jar ),我建议回答 this other question
关于java - 从命令行执行包含 jar 的 jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6005206/