Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何解决与maven的冲突_Java_Maven_Jar - Fatal编程技术网

Java 如何解决与maven的冲突

Java 如何解决与maven的冲突,java,maven,jar,Java,Maven,Jar,我有pom文件: 我使用命令编译:clean compile assembly:single 但我得到警告: [警告]“dependencies.dependency.systemPath”用于 backtesting:client:jar不应指向 项目目录, ${project.basedir}/lib/client-0.1-jar-with-dependencies.jar将被删除 第18行第25列的从属项目无法解决 jar文件中不存在此库: 当我运行jar文件时,我得到: java -j

我有pom文件:

我使用命令编译:
clean compile assembly:single

但我得到警告:

[警告]“dependencies.dependency.systemPath”用于 backtesting:client:jar不应指向 项目目录, ${project.basedir}/lib/client-0.1-jar-with-dependencies.jar将被删除 第18行第25列的从属项目无法解决

jar文件中不存在此库:


当我运行jar文件时,我得到:

java -jar backtestingCandlesDownloader-0.1-jar-with-dependencies.jar 1440672480000 1441025280000 60000
task: startDate = 1440672480000, endDate = 1441025280000, period = 60000
Exception in thread "main" java.lang.NoClassDefFoundError: com/xxx/backtesting/client/model/Server
    at com.xxx.backtestingCandlesDownloader.Main.main(Main.java:33)
Caused by: java.lang.ClassNotFoundException: com.xxx.backtesting.client.model.Server
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 1 more

我不知道如何在jar文件中包含client-0.1-jar-with-dependencies.jar

您的警告是指POM的第16行和第18行:

<scope>system</scope>
...
<systemPath>${project.basedir}/lib/client-0.1-jar-with-dependencies.jar</systemPath>
一旦安装,您只需将其作为依赖项引用,就像其他Maven依赖项一样:

<dependencies>
...
    <dependency>
        <groupId>com.xxx.backtesting</groupId>
        <artifactId>client</artifactId>
        <version>0.1</version>
    </dependency>
...
</depencencies>

  • 首先确保项目目录中有lib/client-0.1-jar-with-dependencies.jar,然后将${project.basedir}替换为${pom.basedir}

    <dependencies>
    ...
        <dependency>
            <groupId>com.xxx.backtesting</groupId>
            <artifactId>client</artifactId>
            <version>0.1</version>
        </dependency>
    ...
    </depencencies>
    
    mvn install:install-file -Dfile=/path/to/lib/client-0.1-jar-with-dependencies.jar -DgroupId=com.xxx.backtesting -DartifactId=client -Dversion=1.0 -Dpackaging=jar