2009-09-08 72 views
2

在我們的網絡應用程序項目中,我們包含一些jar文件。爲了修補jar文件中某個類的某些問題,我們在修補程序源文件夾中更改了此類的實現。是否有使用ant junit任務的可自定義的類加載順序?

由於在tomcat(WEB-INF/lib之前的WEB-INF/classes)中存在一個定義的類加載順序,所以類的修補版本由tomcat加載,而不是jar文件中的原始版本。所以,只要我們部署我們的應用程序,一切都按預期工作。

現在,我們想運行ant對這個補丁類的junit測試。所以我們配置類路徑來保存原始jar和修補後的類文件。但似乎沒有辦法告訴ant的junit任務首先加載修補過的類,而不是從jar文件中打開未修補的版本。

有沒有辦法解決這個問題?有沒有一種方法可以確定螞蟻的junit任務加載的類的順序?有沒有其他的方法來測試我們從螞蟻修補過的類?

回答

1

我認爲一個ant類路徑就像標準的Java類路徑一樣工作。類路徑按照路徑被聲明的順序進行搜索,並且從找到路徑的第一個路徑加載類。您junit任務

你的classpath元素應該是這樣的:

<classpath> 
    <pathelement location="${patched.class.folder}"/> 
    <pathelement location="${original.class.jar}"/> 
</classpath> 
+0

謝謝。這幫助了我。 – maccaroo 2016-02-11 02:47:08

相關問題