1.windows版
在完成項目后需要進打包上傳服務器。
-
在idea的右側找到maven 打開項目
-
在lifecycle中先進清除我們自己生成的target包,
-
在點擊:
-
在使用package進行打包
-
在我們打包的位置進行打開cmd
-
在控制台上進行運行項目(執行啟動指定) java -jar xxxxx.jar(在輸入jar的前面的字段使用tab鍵可以自動補全)
jar支持命令行啟動需要依賴的maven插件支持,
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<!-- 我們要注意maven的版本,有時版本不同引起打包時出錯 -->
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.1.0</version>
</plugin>
</plugins>
</build>
假如我在maven打版本下進行打包會報錯:
下面是我的maven的版本號:
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: E:\MAVEN_life\apache-maven-3.6.3\bin\..
Java version: 1.8.0_161, vendor: Oracle Corporation, runtime: E:\JDK_life\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"```
進行的報錯信息:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources (default-resources) on project demo1: Input length = 1 -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
[WARNING] The POM for com.alibaba:druid:jar:1.2.6 is invalid, transitive dependencies (if any) will not be available, enable debug logging for more details
The POM for com.alibaba:druid:jar:1.2.6 is invalid, transitive dependencies (if any) will not be available, enable debug logging for more details
[INFO]
[INFO] --- maven-resources-plugin:3.2.0:resources (default-resources) @ demo1 ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Using 'UTF-8' encoding to copy filtered properties files.
[INFO] Copying 4 resources
我們需要添加下面的一下配置:
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.1.0</version>
</plugin>
2.處理在windows端口被占用
當我們打包完成后,找到打包的位置,需要在cmd控制台上運行打包后的項目:java -jar xxxx.jar
;其中的xxxx.jar就是我們打包后的項目,
上面我們可以看到我們的端口8080被占用,這就需要我們去把8080端口關閉后在運行項目;
關閉端口:
-
查詢端口
netstat -ano
可以查看全部的端口 -
查詢指定端口
netstat -ano |findstr "8080(這里的8080是我們需要查找的端口號)
-
根據進程PID查詢進程名稱:
tasklist |findstr “7744(上圖標記處)"
可以看到我們電腦中在使用這個端口的程序,
-
根據PID結束任務進程:
taskkill /F /PID "進程PID號"
回車后,將會提示進行已經結束
-
也可以根據進行名稱結束任務進程
taskkill -f -t -im "進程名稱"
注意要是使用
taskkill -f -t -im "進程名稱"
這個可能把關於進程名稱的全部都關閉了,這樣有時間會誤關我們需要使用的端口
主要使用
taskkill /F /PID "進程PID號"