如何在maven中添加自定义jar



我能够在jar文件中为类创建一个对象,这是另一个模块。

我创建了一个带有主类的新java项目,将jar添加到lib文件夹中,并且我能够为该jar的类(com.canonical.client)创建对象,同时将主类作为java应用程序运行。

现在,我已经将这个java项目转换为maven。当我尝试清理和安装时,我无法成功构建。给出的错误是" package com.canonical.client does not exist"。

在Jespers的建议下,我能够构建这个项目。我得到以下异常,而调用创建客户端对象的方法。在那个罐子里,它寻找其他的罐子。

    java.lang.ClassNotFoundException: ch.qos.logback.core.Context
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1720)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)
        at com.mmf.controllers.PickEquifaxController.handleRequestInternal(com.mmf.controllers.PickEquifaxController:33)

我的manifest文件在jar中的前两行如下所示,它实际上引用了118个jar,

    Manifest-Version: 1.0
    Class-Path: . canonicalclient_lib/activemq-camel-5.8.0.jar canonicalclient_lib/activemq-core-5.6.0.jar 
    canonicalclient_lib/activemq-pool-5.6.0.jar canonicalclient_lib/activemq-protobuf-1.1.jar 

我需要做什么才能得到这个问题的答案。请建议。

您可以使用如下命令在本地Maven存储库中安装JAR:

mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id>
    -DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=<packaging>

,您必须填写自己的组id,工件id,版本和包装-包装很可能是jar -例如:

mvn install:install-file -Dfile=myjarfile.jar -DgroupId=com.canonical
    -DartifactId=client -Dversion=1.0 -Dpackaging=jar

这样做之后,您可以像使用任何其他Maven依赖一样使用它,通过在pom.xml中使用组id,工件id和版本指定依赖:

<dependency>
    <groupId>com.canonical</groupId>
    <artifactId>client</artifactId>
    <version>1.0</version>
</dependency>

您可以通过这种方式在POM.xml中添加自定义jar

<dependency> <groupId>com.canonicalclient</groupId> <artifactId>xxx</artifactId> <version></version> <systemPath>${basedir}/lib/xxx.jar</systemPath> </dependency>

最新更新