Eclipse maven插件(m2e)包含意外文件

时间:2018-04-20 10:34:43

标签: java eclipse maven

我正在使用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中的文件?

2 个答案:

答案 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通过命令行生成的文件是相同的