Digging in Java

          maven, spring, hibernate, et al

          Maven 淺談(一)

          Maven是一種project management工具。大致上來說,可以認為它是沒有圖形界面的IDE。你可以用它來編譯,打包,做成jar,war,ear.....

          下載安裝之后,可以通過命令創(chuàng)建一個簡單的java項目

          mvn archetype:create -DgroupId=com.sky -DartifactId=birds -DpackageName=com.sky.birds

          這里,archetype是maven的一個plugin,而create是這個plugin的一個goal

          Maven一個麻煩的地方就是它有自己的目錄layout,大致是這樣的:
          birds/pom.xml
               
          /src/
               
          /src/main/
                   
          /main/java/
                        
          /java/com/sky/birds
               
          /src/test/
                   
          /test/java/

          上面的命令會在com.sky.birds下面生成一個App.java,里面就是一個簡單的hello world程序

          有了這個基本的框架之后,可以用
          mvn install
          來編譯,并且打包成一個jar

          這里install是maven的一個lifecycle phase。maven的lifecycle phase包括process-resources, compile, process-classes, process-test-resources,
          test-compile, test, prepare-package, package......
          在maven的默認設(shè)置中,每個phase都附加了相應(yīng)的plugin goal。而執(zhí)行一個phase,意味著同時執(zhí)行所有在它之前的phases

          比方說,process-resources這個lifecycle phase,它對應(yīng)的plugin goal是resources:resources;test,對應(yīng)著 surefire:test;package,對應(yīng) jar:jar

          當(dāng)你執(zhí)行 mvn install的時候,換成plugin就是
          mvn resources:resources \
              compiler:compile \
              resources:testResources \
              compiler:testCompile \
              surefire:test \
              jar:jar



          編譯好了應(yīng)該可以運行那個hello world了,是這樣的:
          mvn exec:java -Dexec.mainClass=com.sky.birds.App
          要加參數(shù)?用 -Dexec.args=xxxx


          項目建起來了,但真正寫代碼還是在eclipse里。把它import到eclipse里?杯具發(fā)生了:eclipse不認為那是一個java項目......

          有個命令可以解決這個問題
          mvn eclipse:eclipse

          然后就可以把它作為一個existing project,import到eclipse里了


          順便說一下,建一個web項目類似于
          mvn archetype:create -DgroupId=com.mycompany.app \
                               
          -DartifactId=my-webapp \
                               
          -DarchetypeArtifactId=maven-archetype-webapp


          posted on 2011-04-05 11:18 GX 閱讀(512) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           

          導(dǎo)航

          <2011年4月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          1234567

          統(tǒng)計

          常用鏈接

          留言簿

          隨筆檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 漳浦县| 重庆市| 武鸣县| 平远县| 康定县| 台前县| 榆社县| 冀州市| 高州市| 邯郸市| 乡城县| 务川| 宝清县| 罗源县| 攀枝花市| 湘潭县| 顺平县| 分宜县| 芦溪县| 扬中市| 东台市| 正镶白旗| 黄骅市| 隆尧县| 庆阳市| 镇康县| 邛崃市| 新巴尔虎左旗| 隆子县| 新野县| 丰城市| 平利县| 德化县| 张掖市| 庆安县| 资阳市| 唐海县| 梨树县| 威海市| 梁平县| 永善县|