2016-01-08 65 views
-1

我有一個gradle項目與src/main/java/coolpackage/currentClass.javasrc/test/java/coolpackage/desiredClass.java。有沒有可能將desiredClass導入到currentClass中?在java gradle項目中,我可以引用主類中的測試類嗎?

「import coolpackage」。會導致它認爲我指的是開發包而不是測試包,並且它不會像「測試」那樣識別它上面的包。

+0

如果這些類在同一個包中,則不需要導入它。 – Jens

+3

與package沒有任何關係:gradle有意無法編譯帶有生產類的測試類,因爲您不想在生產代碼中使用測試類。生產代碼應該與測試類和庫完全隔離,並且gradle確保它是。因此,顯然,測試類可以訪問生產類和庫,但反過來是錯誤的。 –

回答

1

對於標準的gradle項目設置,這是不可能的,因爲gradle在src/test下沒有編譯任何東西來編譯生產代碼。這可以通過編輯sourceSets在你的build.gradle像這樣來實現:

sourceSets { 
    main { 
     java { 
      srcDir 'src/main/java' 
      srcDir 'src/test/java' 
     } 
    } 
} 

話雖如此,我會問你爲什麼會需要做到這一點。測試類不應該用在生產代碼中,因此這似乎表明我有些問題。

相關問題