雖然試圖找到答案Android Jasper Reporting我發現有要回答爲此另外兩個問題,我已經問了問的一個問題,而不是一個答案):如何將Java編譯器和DEX轉換器實現爲Android應用程序?
我的問題,現在是: 「有沒有編譯器直接在設備上使用」和「如何在不生根的裝置執行這樣。 如果有人可以給我一個提示,我真的很感激......
我看着有點並且發現了一些應用程序,這些應用程序可以直接在未生根的Android設備上創建APK:
- TerminalIDE - https://play.google.com/store/apps/details?id=com.spartacusrex.spartacuside&hl=de
- JavaIDEdroid - http://code.google.com/p/java-ide-droid/
- AIDE - https://play.google.com/store/apps/details?id=com.aide.ui&hl=en
看起來他們正在使用Eclipse中的編譯器和移植DEX轉換器。現在我試圖弄清楚如何做同樣的事情。
好的:獲取源代碼並查看它。但是,當我遇到好奇的問題來獲得與服務器的連接並試圖解決它時,我會在這裏提出這個問題。希望既能幫助別人,並也越來越爲自己的答案;)
我把org.eclipse.jdt.core_3.7.3.v20120119-1537.jar從我的靛藍的插件目錄,並試圖下面的代碼:
org.eclipse.jdt.internal.compiler.batch.Main ecjMain = new org.eclipse.jdt.internal.compiler.batch.Main(new PrintWriter(System.out), new PrintWriter(System.err), false/*noSystemExit*/, null, progress);
System.err.println("compiling...");
ecjMain.compile(new String[] {"-classpath", "/system/framework", storage.getAbsolutePath()+"/Test.java"});
ecjMain.compile(new String[] {storage.getAbsolutePath()+"/Test.java"});
System.err.println("compile succeeded!!!");
有時引發的異常是java.lang.Object中找不到和othertimes它堅持做什麼而升溫我的100%使用率處理器......
在這個時候,我無法弄清楚發生了什麼,爲什麼。因爲我有其他工作要做,所以這部分必須稍微等一下。
你的問題與[tag:compiler-construction]無關。你沒有構建編譯器。不要盲目標籤。 – EJP