1. 程式人生 > 程式設計 >IDEA不編譯除了.java之外的檔案的解決辦法(推薦)

IDEA不編譯除了.java之外的檔案的解決辦法(推薦)

— 遇到問題

今天在IDEA裡面執行專案的時候報了一個錯,如下圖所示:

IDEA不編譯除了.java之外的檔案的解決辦法(推薦)

— 找到問題根源

其實控制檯給出的錯誤資訊提示說的很明顯:類載入器載入檔案的時候沒有找到指定的檔案,於是我看了一下專案編譯的二進位制檔案,如下圖所示:

IDEA不編譯除了.java之外的檔案的解決辦法(推薦)

我們可以很清楚的看到我的原始檔sixbit和threebit目錄和目錄下的檔案並沒有被編譯到target二進位制檔案裡面去,所以專案在執行的時候要用到sixbit和threebit目錄下的檔案時,需要去編譯號的classes裡面去找相對應的二進位制檔案,發現根本沒有,於是就報錯了。但是我在MyEclipse裡面執行是完全沒有問題的,但是在idea裡面就不行,於是經過查閱網上資料,發現IDEA是不會編譯.java之外的檔案。因為這是maven構建的專案,構建Maven專案的時候,如果沒有進行特殊的配置,Maven會按照標準的目錄結構查詢和處理各種型別檔案。

src/main/java和src/test/java

這兩個目錄中的所有*.java檔案會分別在comile和test-comiple階段被編譯,編譯結果分別放到了target/classes和targe/test-classes目錄中,但是這兩個目錄中的其他檔案都會被忽略掉。

src/main/resouces和src/test/resources

這兩個目錄中的檔案也會分別被複制到target/classes和target/test-classes目錄中。

— 解決問題

Maven預設只識別src-main-resources下的資原始檔,如果在maven工程中資原始檔放在src-main-java下,我們需讓Maven知道。在pom.xml中,根節點中project中加入如下在pom.xml裡面加入如下程式碼:

<build>
  <resources>
    <resource>
      <directory>src/main/java</directory>
      <includes>
        <include>**/*.*</include>
      </includes>
    </resource>
  </resources>
</build>

編譯整個專案,target檔案裡面生成了相對應的檔案,如下圖所示:

IDEA不編譯除了.java之外的檔案的解決辦法(推薦)

總結

到此這篇關於IDEA不編譯除了.java之外的檔案的解決辦法的文章就介紹到這了,更多相關idea不編譯除了.java之外的檔案內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!