javac、classpath的編譯和生成Maven工程

1.01_java源碼和編譯
用notepad++查看JavaA.java


image.png

在cmd中進入javaA.java所在的文件夾(例:javaA.java在C盤softwaredate的test的01_java源碼和編譯文件夾中)
在cmd中進行編譯,即javac JavaA.java,運行后會發(fā)現(xiàn)在01_java源碼和編譯文件夾中多了JavaA.class


image.png

image.png

再在cmd中直接進行運行JavaA,即java JavaA(虛擬機中默認只會執(zhí)行.class文件)


image.png

2.02_main方法
用notepad++查看JavaC.java


image.png

image.png

在cmd中進入javaC.java所在的文件夾(例:javaC.java在C盤softwaredate的test的02_main方法文件夾中)

在cmd中進行編譯,即javac JavaC.java,運行后會發(fā)現(xiàn)在02_main方法文件夾中多了JavaA.class、JavaB.class和JavaC.class


image.png

為什么會出現(xiàn)3個.class?
因為在JavaC的代碼中,使用到了main方法,在main方法中new了JavaA、JavaB和JavaC
3.03_package包路徑
用notepad++查看"03_package包路徑/com/pa"文件夾中的JavaA.java
image.png

通過JavaA.java的內容,可以發(fā)現(xiàn),一開始有一個"package com.pa;"看到這個,就需要在com的上一層目錄,進行編譯
image.png

4.05_classpath

依然是用notepad++查看05_classpath文件夾,如下圖所示,有3個工程
我們要在cmd中直接對Project3/com/pc下面的JavaC.java進行編譯!
如果依然使用以前的方法,進入到工程下面直接進行編譯的話,如圖所示,直接報錯,為什么呢?


image.png

因為在JavaC.java中我們需要導入其他工程下的JavaA和JavaB,所以正確的使用方法應該是:
image.png

classpath的編譯:
javac -cp .;../Project1;../Project2; com/pc/JavaC.java
5.打jar包,及調用jar包編譯執(zhí)行
image.png

javac -cp .;../Project1.jar;../Project2.jar; com/pc/JavaC.java
//調用jar包內容編譯

java -cp ,;../Project1.jar;../Project2.jar; com/pc/JavaC
//執(zhí)行

jar -cvf Project4.jar .
打成jar的名字 當前目錄
即在當前目錄下打一個Project4.jar的jar包

6.通過maven 編譯 部署
1)需要先配置maven的環(huán)境變量
在環(huán)境變量中配置一個MAVEN_HOME——C:\software\apache-maven-3.5.0


image.png

再去path中添加%MAVEN_HOME%\bin


image.png

2)進入到C:\softwaredate\test\07_maven\my-app中
image.png

mvn clean //清除項目target
mvn compile //編譯源代碼

mvn test-compile //編譯測試代碼
mvn test //執(zhí)行測試
mvn package // 項目打包
mvn install // 在本地Repository中安裝jar
mvn site //產生site
7.package包
生成maven模板工程

mvn archetype:generate -DgroupId=com.guoyasoft -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false


image.png
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Maven編譯代碼的相關命令 第一、main目錄下的主代碼編寫完畢后,使用Maven進行編譯,在項目根目錄下運行命...
    加油小杜閱讀 1,443評論 0 2
  • jHipster - 微服務搭建 CC_簡書[http://m.itdecent.cn/u/be0d56c4...
    quanjj閱讀 936評論 0 2
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,711評論 19 139
  • spring官方文檔:http://docs.spring.io/spring/docs/current/spri...
    牛馬風情閱讀 1,861評論 0 3
  • 最近追劇,追的很憤懣,心疼小美,心疼的不得了。作為外企資深HR她的生活本來可以很小資的,結果遇到如此偏心的父母,什...
    瑩仔陪你說晚安閱讀 373評論 0 0

友情鏈接更多精彩內容