我正在使用eclipse中的maven项目。当我使用“Run As-> Maven install”运行时,jar会正确生成到目标文件夹中。但是我发现目标jar的大小与我通过命令行构建项目时的大小不同:
SELECT se.user_id, se.session_id
FROM session_events AS se
join (SELECT se1.user_id,min(se1.session_order) as session_order
FROM session_events AS se1
WHERE se.user_id = se1.user_id AND se1.event = 'order_completed'
GROUP BY 1) as sel
on se.session_order < se1.session_order and se.user_id = se1.user_id
我比较了两个jar文件,我发现eclipse创建的jar包含的文件不在用commad行生成的jar中。所有文件都在许多包中的src文件夹中。例如:/src/main/java/Dummy/resources/file.pdf
使用Eclipse生成的jar文件中包含的文件扩展名:bd cer cfg class css cvsignore dld gitignore htm jar jardesc jasper jrxml MF odt pdf properties sql txt wsdd xml xsl
使用命令行生成的jar文件中包含的文件扩展名:类MF属性xml
我只需要:class,MF,properties,xml,cfg和xsl extensions
我在https://github.com/RubenPozoMolina/49939684
中创建了一个示例该项目包含src / main / resources / test.pdf和src / main / java / dummy / iddummy / resources / test.odt
用eclipse iddummy-0.0.1-SNAPSHOT.jar包含test.odt文件执行命令行test.odt文件不进入jar文件
如何配置要包含在eclipse中的文件?
答案 0 :(得分:0)
您在src/main/java
文件夹中有非Java文件。他们需要在其他地方。
答案 1 :(得分:0)
为了确保jar中包含的文件,我修改了我的pom:
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<filtering>true</filtering>
<includes>
<include>**/*.MF</include>
<include>**/*.cfg</include>
<include>**/*.properties</include>
<exclude>**/*.xml</exclude>
<exclude>**/*.xsl</exclude>
</includes>
<excludes>
<exclude>**/*.bd</exclude>
<exclude>**/*.cer</exclude>
<exclude>**/*.cvsignore</exclude>
<exclude>**/*.css</exclude>
<exclude>**/*.htm</exclude>
<exclude>**/*.gitignore</exclude>
<exclude>**/*.jardesc</exclude>
<exclude>**/*.jasper</exclude>
<exclude>**/*.jrxml</exclude>
<exclude>**/*.sql</exclude>
<exclude>**/*.wsdd</exclude>
<exclude>**/*.odt</exclude>
<exclude>**/*.pdf</exclude>
</excludes>
</resource>
</resources>
</build>
现在eclipse和maven通过命令行生成的文件是相同的