java maven 个人汇总

带上源文件
原始需求: 后端生成接口, 并以此为文档给前端使用, 前端自然就使用了接口参数的方法名,
而后端做实现接口包时, 需要获取这些接口参数的方法名, 又不想写额外的配置文件, 所以就需要 javassist 包, 和源代码文件, 网上说编译的时候带上g也行, 但jdk1.7实测不行, 带上源代码就肯定行,

常用插件

---------- maven-resources-plugin ----------
复制资源文件, 用于打包时想把资源文件外置, 不在jar内

<!--cc 资源文件(其实可以不用)-->
<plugin>
<artifactId>maven-resources-plugin</artifactId> 
<version>3.0.2</version>
<executions> 
<execution> 
<id>copy-resources</id>
<phase>validate</phase>
<goals> 
<goal>copy-resources</goal> 
</goals> 
<configuration> 
<!--<outputDirectory>${project.build.directory}/classes/config</outputDirectory>--> 
<outputDirectory>${project.build.directory}/config</outputDirectory> 
<resources>
<resource> 
<directory>src/main/resources</directory> 
<filtering>true</filtering> 
</resource> 
</resources> 
</configuration> 

</execution> 
</executions> 
</plugin>

---------- maven-dependency-plugin ----------
编译时生成lib

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <executions>
                    <execution>
                        <id>copy</id>
                        <phase>install</phase>
                        <goals>
                            <goal>copy-dependencies</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>
                                ${project.build.directory}/lib
                            </outputDirectory>
                        </configuration>
                    </execution>
                </executions>
            </plugin>


---------- maven-jar-plugin ----------
jar打包用的

<!-- 打包jar文件时,配置manifest文件,加入lib包的jar依赖 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<classesDirectory>target/classes</classesDirectory>
<excludes>
<!--过滤配置文件, 配置文件外置-->
<exclude>spring/*</exclude>
<exclude>dubbo/*</exclude>
<exclude>*.properties</exclude>
<exclude>*.xml</exclude>
</excludes>
<finalName>StatisticsDao</finalName>
<archive>
<manifest>
<!--<mainClass>com.alibaba.dubbo.container.Main</mainClass>-->
<!--配置运行jar包的main方法-->
<mainClass>com.yf.weloop.statistics.dao.Startup</mainClass>
<!-- 打包时 MANIFEST.MF文件不记录的时间戳版本 -->
<useUniqueVersions>false</useUniqueVersions>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
</manifest>
<manifestEntries>
<!--声明外置lib, 配置文件等-->
<Class-Path>config/ config2/</Class-Path>
</manifestEntries>
</archive>
</configuration>
</plugin>

猜你喜欢

转载自mocha-c-163-com.iteye.com/blog/2365700