2017-10-22 159 views
0

我正在使用內存Java編譯器,它可以實現Java源代碼和產品Class對象。使用JavaCompiler API加載預編譯的類

現在我通過一個Cache來增強編譯器的性能,緩存編譯器爲類的源代碼生成的字節碼。

由於這樣的結果,我不能再編譯依賴於從Cache中的一類,即類,如果類一個(取決於)和被編譯,他們都得到緩存。如果我再改一個,只有一個被重新編譯,而我得到錯誤沒有被發現:

cannot find symbol 
symbol: class MyClass 

我該如何解決這個問題?在編譯過程中ClassLoaderFileManager是否負責解決JavaCompiler遇到的依賴關係?

謝謝!

回答

0

回答我的問題:

我把它通過擴展FileManagerlist()方法返回我JavaFileObject S的Iterable工作。奇蹟般有效!