我想實例化一個新的類對象形式從用戶輸入收集的外部位置。程序詢問用戶文件的位置,比如/tmp/MyTestClass.java。然後我會喜歡它來獲取該.java文件,並在程序中使其成爲可用的類。所以我可以調用像MyClass = new MyTestclass()。我一直在環顧四周,似乎無法找到答案或者甚至有可能?任何信息都會有用。動態檢索JUnit類
謝謝!
-----------編輯---------------
我可能一直在想我的問題。這是一個JUnit測試(對不起,應該提到這個之前)。下面是我用來拉入靜態類的一個例子。我希望能夠從用戶輸入中動態提取JUnit測試文件。 testcastjunit是該類的名稱。我需要能夠以編程方式從用戶輸入中獲取課程並運行測試用例。
org.junit.runner.Result result = JUnitCore.runClasses(**testcastjunit.class**);
for (Failure failure : result.getFailures()) {
System.out.println(failure.toString());
}
[This](http://tutorials.jenkov.com/java-reflection/dynamic-class-loading-reloading.html)應該讓你開始。不過你需要一個'class'文件。可以使用JavaCompiler實例從正在運行的Java應用程序編譯Java文件。如果你有一個JDK,那麼調用'ToolProvider.getSystemJavaCompiler()'應該可以得到一個。 – toniedzwiedz