maven項目打包和運行


1. 添加pom

<build>
  <plugins>
    <plugin>
      <artifactId>maven-assembly-plugin</artifactId>
      <configuration>
        <archive>
          <manifest>
            <mainClass>com.tang.CSVUtils</mainClass>
          </manifest>
        </archive>
        <descriptorRefs>
          <descriptorRef>
            jar-with-dependencies
          </descriptorRef>
        </descriptorRefs>
      </configuration>
      <!-- 加上下面這一段,使用 mvn package命令,不加則使用mvn assembly-->
      <execution>
        <id>make-assemble</id>
        <phase>package</phase>
        <goals>
          <goal>single</goal>
        </goals>
      </execution>
    </plugin>
  </plugins>
</build>

2. 打包
D:\projects\sunshine>mvn clean package

mvn clean package依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)等7個階段。
mvn clean install依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install等8個階段。
mvn clean deploy依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install、deploy等9個階段。

   由上面的分析可知主要區別如下,

package命令完成了項目編譯、單元測試、打包功能,但沒有把打好的可執行jar包(war包或其它形式的包)布署到本地maven倉庫和遠程maven私服倉庫
install命令完成了項目編譯、單元測試、打包功能,同時把打好的可執行jar包(war包或其它形式的包)布署到本地maven倉庫,但沒有布署到遠程maven私服倉庫
deploy命令完成了項目編譯、單元測試、打包功能,同時把打好的可執行jar包(war包或其它形式的包)布署到本地maven倉庫和遠程maven私服倉庫

3. 跳過測試

mvn clean package -DskipTests    

或者 

mvn clean package -Dmaven.test.skip=true

-DskipTests,不執行測試用例,但編譯測試用例類生成相應的class文件至target/test-classes下。
-Dmaven.test.skip=true,不執行測試用例,也不編譯測試用例類。

4. 運行
java -jar target/spring-boot-scheduler-1.0.0.jar

 

5.springboot指定配置文件運行

創建三個配置文件如下:

 

application.properties內容如下:

  spring.profiles.active=rabbit
如上配置,在運行時就會使用application-rabbit.properties配置文件運行,

如果rabbit改成test,那么運行時就會使用application-test.properties配置文件運行。

項目打包成jar包之后,在啟動時,可以使用如下命令對使用的配置文件進行指定,也就是說對application.properties中的active值進行覆蓋,命令如下:

java -jar -Dspring.profiles.active=test demo-0.0.1-SNAPSHOT.jar

 

6. 保持程序后台運行
    $ java -jar test.jar & (& 表示后台運行)

    $ nohup java -jar test.jar & (nohup表示不掛斷,即不受當前窗口影響)

    $ nohup java -jar test.jar >log_temp.txt & (將運行日志輸入到log_temp.txt---jar包所在的目錄)

    在ubuntu下直接sudo java -jar test.jar &

   或者進入root, java -jar test.jar &   

    

    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM