maven可能碰到过的一些问题的解决方案

1:本地jar导入maven到localRespository

我们会碰到有些jar包并没有在maven的中央仓库提供,下面是将本地的jar包导入本地仓库的方法,以oracle的驱动jar为例:

mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion=10.2.0.1.0 -Dpackaging=jar -Dfile=ojdbc.jar


2:package工程时生产source.jar

很多时候我们需要把自己的工程打成jar包发放给对方,对方希望能提供源码。这时候我们可以在pom.xml文件里添加这样的配置信息:

<build>
        <plugins>
            <plugin>
                <artifactId>maven-source-plugin</artifactId>
                <version>2.2.1</version>
                <configuration>
                    <attach>true</attach>
                </configuration>
                <executions>
                    <execution>
                        <phase>compile</phase>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

3:在打包比较大的工程时,如果需要生成源码或者docs时,可能会碰到内存溢出的情况,解决方法如下:

找到文件%M2_HOME%\bin\mvn.bat ,这就是启动Maven的脚本文件,在该文件中你能看到有一行注释为:

@REM set MAVEN_OPTS=-Xdebug -Xnoagent -Djava.compiler=NONE...

它的意思是你可以设置一些Maven参数,我们就在注释下面加入一行:

set MAVEN_OPTS= -Xms800m -Xmx800m


4:有时候我们需要把自己maven工程变成普通工程发给一些没有在用maven的朋友。如果你的工程依赖了十几个甚至几十个第三方jar的话,自己从仓库里找出这些jar是非常吃力的,解决方案如下:

mvn dependency:copy-dependencies

输出的路径outputDirectory (默认位置: ${project.build.directory}/dependency)当然也可以自己指定:

mvn dependency:copy-dependencies -DoutputDirectory=lib


你可能感兴趣的:(maven可能碰到过的一些问题的解决方案)