我正在尝试进行模块化应用程序,我遇到了问题,因为我有两个模块,其中一个模块依赖于另一个模块。
例如:模块1有一个从模块2导入类的类。
我在模块1的Manifest.txt中添加了以下行:
Class-Path: modulo_2.jar
...但是我在创建jar时遇到错误,因为我无法在模块1中解析模块2中类的导入。尽管存在错误,但正在创建jar。在我部署项目之后,我仍然有同样的错误,说我的类无法解析导入,任何人都知道如何使这项工作。
答案 0 :(得分:2)
当你构建jar(编译时)时,module_2.jar应该在类路径中。您需要首先构建module_2.jar并将其添加到类路径中。如果您使用命令行进行构建:
javac -cp module_2.jar my_java_files
在运行时,module_2.jar必须位于您在清单文件中指示的位置。如果你已经使用了Class-Path:module_2.jar,那么将module_2放在与module_1相同的文件夹中并像这样运行:
java -jar module_1.jar MyMainClass
答案 1 :(得分:-1)
或者,您可以尝试使用Maven2构建,它具有非常好的依赖关系管理,并使用程序集插件构建可分发的tar.gz,以便在其中发送带有依赖项的应用程序。 / p>