加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

从没有java源的类构建maven jar

发布时间:2020-12-15 04:14:15 所属栏目:Java 来源:网络整理
导读:我想从类构建一个maven jar工件.我没有源文件.这些类最初是在本地安装的另一个工件中.我使用maven-dependency-plugin来解压缩类并将它们放在这个项目/模块的目标文件夹中. 它创建了jar ..但不包括我刚刚解压缩的类.这是我的pom: build... !-- unpack myjar1
我想从类构建一个maven jar工件.我没有源文件.这些类最初是在本地安装的另一个工件中.我使用maven-dependency-plugin来解压缩类并将它们放在这个项目/模块的目标文件夹中.

它创建了jar ..但不包括我刚刚解压缩的类.这是我的pom:

<build>
... 

<!-- unpack myjar1.jar and myjar2.jar -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <version>2.8</version>
                <executions>
                    <execution>
                        <id>unpack</id>
                        <phase>package</phase>
                        <goals>
                            <goal>unpack</goal>
                        </goals>
                        <configuration>
                            <artifactItems>
                                <artifactItem>
                                    <groupId>com.company</groupId>
                                    <artifactId>myjar1</artifactId>
                                    <version>1.0</version>
                                    <type>jar</type>
                                    <overWrite>false</overWrite>
                                    <outputDirectory>target/final</outputDirectory>
                                </artifactItem>
                                <artifactItem>
                                    <groupId>com.company</groupId>
                                    <artifactId>myjar2</artifactId>
                                    <version>1.0</version>
                                    <type>jar</type>
                                    <overWrite>false</overWrite>
                                    <outputDirectory>target/final</outputDirectory>
                                </artifactItem>
                            </artifactItems>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>2.4</version>
                <executions>
                    <execution>
                        <id>default</id>
                        <phase>package</phase>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                        <configuration>
                            <classesDirectory>/path/to/target/final/folder</classesDirectory>
                            <includes>
                                <include>**</include>
                            </includes>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

</plugins>

</build>

如何将这些类包含在final.jar中?

解决方法

我认为最好的解决方案是 maven-shade-plugin:创建一个pom.xml,将这两个库添加为依赖项并配置maven-shade-plugin. 运行mvn包,你就有了合并的项目.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读