maven知識總結

  1. Git一個maven項目 -> 從eclipse裏刪除 -> import已存在的maven項目 -> update project -> run as maven install,提示

    java.lang.UnsupportedClassVersionError: org/apache/maven/cli/MavenCli

    解決方法: 參考自 http://blog.csdn.net/zhaifengmin/article/details/47802663 不過這哥們也是轉的,而且沒有出處,原文已不可考

    文章內容 :

    從apache 官網下載maven bin 版本,我下的是apache-maven-3.3.3-bin.zip。

    下載下來的安裝包解壓到你的工作目錄下。如:E:\開發\apache-maven-3.3.3,配置環境變量,MAVEN_HOME,再把%MAVEN_HOME%\bin配置到 path中。

    安裝Java jdk,配置JAVA_HOME。打開cmd ,輸入mvn -r,如果會報錯。java.lang.UnsupportedClassVersionError: org/apache/maven/cli/MavenCli : Unsupported major.minor version 51.0,就是maven和java版本不匹配,下的是apache-maven-3.3.3,要裝jdk1.7。

    如果要使用jdk1.6 可以下載 3.2.5版本。

    實際解決:

    項目原來使用的maven 3.3.9,下載了3.0.5 複製原settings文件,在windows -> perference裏設置爲3.0.5,再次Run as maven install,成功

       問題 : eclicpse裏的項目怎麼能實現每個項目都用獨立的maven配置,而不是一改就改全局


2. 項目異常:Maven報錯Missing artifact jdk.tools:jdk.tools:jar:1.7

解決方法

<dependency>  
    <groupId>jdk.tools</groupId>  
    <artifactId>jdk.tools</artifactId>  
    <version>1.7</version>  
    <scope>system</scope>  
    <systemPath>${JAVA_HOME}/lib/tools.jar</systemPath>  
</dependency>

可以解決問題,不知道爲什麼同樣的pom文件,idea裏就不用設置上面這個依賴


3. maven exclude某個包或者某個文件

本知識點參考於: http://blog.csdn.net/cyzero/article/details/8251643 

排除某個包依賴

        <dependency>
            <groupId>commons-dbcp</groupId>
            <artifactId>commons-dbcp</artifactId>
            <version>1.2.1</version>
            <exclusions>
                <exclusion>
                    <artifactId>xercesImpl</artifactId>
                    <groupId>xerces</groupId>
                </exclusion>
            </exclusions>
        </dependency>

排除某個文件

<build>        
        <resources>
            <resource>
                <directory>src/main/Java</directory>
                <!-- 包含 -->
                <includes>
                    <include>**/*.vm</include>
                    <include>**/*.properties</include>
                </includes>
                <!-- 排除  -->
                <excludes>
                <exclude>**/*.log</exclude>
                </excludes>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <includes>
                    <include>**/*.*</include>
                </includes>
                <excludes>
                <exclude>**/*.log</exclude>
                </excludes>
            </resource>
        </resources>
</build>


4. 待續

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章