[英]Maven add dependencies on runtime
我正在尝试使用maven编译并运行此Java项目。 为此,Ive必须使用在maven存储库中找不到的第3方Jar库。 我一直试图告诉Maven在运行时使用该库(因为它在编译时工作得很好,正如我在POM文件上所说的那样,没有问题)。 我已经尝试了几种方法,例如使用Add-Jars插件 ,将其作为外部依赖项添加到POM文件中:
<!--medpost-->
<dependency>
<groupId>lib.medpost</groupId>
<artifactId>medpost</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/medpost/medpost/1.0/medpost.jar</systemPath>
</dependency>
除其他外,例如试图将其指示为命令行参数,例如此API中显示的第一个可选参数。 它仍然抛出ClassNotFoundException。 任何帮助是极大的赞赏。
首先,您需要将自定义JAR安装到本地Maven存储库中:
mvn install:install-file -Dfile=medpost.jar
-DgroupId=lib.medpost -DartifactId=medpost -Dversion=1.0
然后只需将以下标准<dependency>
放入您的POM文件中:
<dependency>
<groupId>lib.medpost</groupId>
<artifactId>medpost</artifactId>
<version>1.0</version>
</dependency>
默认情况下, medpost.jar
将可用于编译和运行时,因此除非您的OP声明有特殊需要,否则您无需指定作用域。
顺便说一句,编译期间没有问题的可能原因是您的IDE的类路径中包含JAR。 但是,当您实际尝试运行它时,依赖项不可用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.