繁体   English   中英

Maven在运行时添加依赖项

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM