如何在 Maven 中只构建 jar-而不包含依赖项?

Ben*_*n H 3 maven maven-assembly-plugin

我正在编译 Kotlin(JRE) 并将其部署到一个小机器人上。我非常幸运地创建了一个带有依赖项的 jar,谢谢 StackOverflow。

<plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <configuration>
        <archive>
            <manifest>
                <mainClass>${project.main.class}</mainClass>
            </manifest>
        </archive>
        <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
    </configuration>
    <executions>
        <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)

但罐子很大,大约有 25mb 大。没有依赖项的 jar 大小是完全合理的 26kb,这确实很重要,因为打包那个大 JAR 很慢,然后我scp每次都必须将其部署到机器人。

我能够将所有依赖项预加载到机器人上的一个文件夹中,通过mvn dependency:copy-dependencies并将它们复制过来。(再次感谢 StackOverflow)。现在我需要一种简单的方法来设置一个属性,使其只需编译和复制即可target/MYBOT-1.0-SNAPSHOT.jar,而不必target/MYBOT-1.0-SNAPSHOT-jar-with-dependencies.jar每次都尝试编译文件。

JF *_*ier 5

将属性设置<assembly.skipAssembly>true(在<properties>POM 的部分中)。那么就jar-with-dependencies不会被建造。