一、目錄在哪
target目錄是在Java項目中的一個目錄,通常出現在Maven等構建工具的項目中,用來存放編譯好的class文件、jar文件、測試報告等相關的構建目標文件。
如果使用IDEA進行Java開發,通常會在項目根目錄下看不到target目錄,這是因為IDEA默認將target目錄隱藏了。將項目根目錄下的.idea文件夾打開,找到workspace.xml文件,將其中的exclude目錄中加上”*/target”,就可以在項目視圖中看到target目錄了。
二、target目錄下的圖片
在target目錄下,最常見的是項目生成的jar或war文件,測試報告以及編譯好的class文件,當然有時我們也可以將一些圖片資源放到target目錄中。
以Maven項目為例,我們可以在項目的src/main/resources目錄中新建一個images目錄,將要用到的圖片資源放在其中。在pom.xml文件中將resources配置項配置為:
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
</resource>
這樣在執行`mvn package`的時候,就會將images目錄下的所有圖片資源打包進生成的jar包中。
三、target目錄拒絕訪問
有些時候,我們會在構建工具中遇到target目錄拒絕訪問的情況。這是因為在某些操作系統上,例如Windows系統中,文件正在被佔用就導致無法刪除。
解決這個問題的方法很簡單,只需要將IDEA或Eclipse等IDE的Run窗口關閉,或者重啟電腦即可。
四、target目錄是什麼
在簡單了解了target目錄出現的位置和存放的內容之後,我們可以對target目錄的定義進行總結,target目錄是存放編譯生成Java項目相關文件的目錄。
五、target目錄作用
作為Java編譯器的產物,target目錄的作用是存放Java項目的構建目標文件。這些構建目標文件包括可執行的jar或war文件,編譯好的class文件等。
Java項目通常會被編譯成class文件,如果是Web應用則會被打包成jar或war文件,而明確的構建目標文件的存放目錄就是target目錄。通過target目錄我們可以找到編譯好的class文件,也可以找到打包好的jar或war文件,方便我們進行測試、部署、發布等操作。
六、target目錄結構
target目錄下一般有三個子目錄:classes、generated-sources和test-classes。
其中,classes目錄存放了項目的編譯結果,也就是Java類文件,如com/example/MyClass.class。generated-sources目錄存放由編譯器自動生成的Java源文件,如JavaBean的Getter和Setter方法等。而test-classes目錄則存放了測試時所需的class文件。
除了這三個目錄,如果項目中使用了一些構建工具,如Maven,則還會有其他目錄。commons-logging-1.2.jar、task.jar、junit-jupiter-api-5.2.0-M1.jar、assertions-core-2.2.0.jar等文件都在target/lib目錄中,Maven的測試報告默認存放在target/surefire-reports目錄中。
七、target目錄下沒有文件
有時候我們會遇到target目錄下沒有文件的情況。這一般是因為沒有執行項目的構建命令致使沒有生成構建目標文件。
在Maven項目中,可以在命令行執行`mvn package`命令即可生成target目錄及其子目錄。
八、IDEA的target目錄
在IDEA中,默認不顯示Java項目的target目錄,需要手動配置。打開File->Settings菜單,選擇”Project Structure”,然後點擊”Modules”選項卡,就可以看到當前項目的目錄結構。點擊中間的”+ New Content Root”按鈕,添加一個新的目錄(target目錄所在的目錄),然後將其標記為「Sources」,即可以看到target目錄。
同時,如果IDEA中運行有問題時,可以嘗試在Run窗口中點擊右上角的”Terminate Application”按鈕,然後重新運行即可。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/303856.html