Java Maven清理和构建依赖关系

时间:2017-07-16 15:03:54

标签: java maven dependencies qr-code netbeans-8

我仍然是java maven和依赖项中的新东西。请问? 我使用Java Maven创建了一些关于QR代码生成器的项目。 当我将项目运行到Netbeans时,使用qrgen-1.2.jar,core-2.0.jar和javase-2.0.jar。它可以生成我想要的任何QR码。

https://i.stack.imgur.com/U4YCW.png

但是当我尝试构建和清理时,它无法在我的Document / NetbeansProjects / QRcode / target / QRcode-1.0-SNAPSHOT.JR中生成我的QR码

这是我的pom.xml

list-comprehension

1 个答案:

答案 0 :(得分:1)

基于您的POM,您不会将依赖项打包在正在生成的可执行jar中。这会导致您的程序在IDE外部运行时失败。

以下是如何使用Maven Assembly插件创建包含依赖项的可执行jar的示例:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <executions>
        <execution>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
            <configuration>
                <archive>
                    <manifest>
                        <mainClass>com.mycompany.qrcode.QRcode</mainClass>
                    </manifest>
                </archive>
                <descriptorRefs>
                    <descriptorRef>jar-with-dependencies</descriptorRef>
                </descriptorRefs>
            </configuration>
        </execution>
    </executions>
</plugin>

mvn package的输出现在将包含target/QRcode-1.0-SNAPSHOT-jar-with-dependencies.jar,您可以看到它包含构建依赖项指定的类。

这是插件的link to the documentation