我有一個用Scala編寫的應用程序,我的一些團隊成員想要它的Java版本。這是一個使用另一個用Scala編寫的API的演示應用程序,他們希望Java版本的應用程序能夠使用Java中的API。但是,該應用程序有點大,我不想在Java中手動rewerite(並且他們不想學習Scala)。有什麼工具可以自動從Scala代碼生成(可讀的)Java代碼嗎?自動將Scala代碼轉換爲Java代碼
13
A
回答
11
7
我不認爲有可能從scala轉換回標準java,因爲Scala可以完成一些相當低級別的字節碼操作。我90%確定他們做了一些無法完全轉換回普通Java代碼的東西。
5
不,沒有這樣的工具。在某種意義上,Scala是Java的一個腳本。 看看coffescript中所有那些時髦的類是如何爲javascript的translated。 *和scala一樣。
我不認爲有很多功能無法以任何方式轉換爲Java,但大多數功能都會被轉換爲非常混亂的代碼,即使人類會做這些工作。
*不能隨便說關於類
+0
看看java到scala的鏈接。似乎很快我的團隊成員會問同樣的問題:) – Jus12 2012-03-26 22:47:09
2
不知道這是否會工作,但你可以通過Java反編譯運行的類文件。
如果它在所有的結果必然是醜陋的地獄。
2
你要反編譯的.class文件到Java源文件,提防斯卡拉產生更多的.class文件
可以從Oracle使用javap的SDK中包含的或反編譯的jad
爲詳細說明閱讀下面的文章:
相關問題
- 1. 將Java代碼轉換爲C#代碼
- 2. 將Java編碼轉換爲僞代碼
- 3. 將JavaScript代碼轉換爲C代碼
- 4. 將PHP代碼轉換爲C#代碼
- 5. 將matlab代碼轉換爲R代碼
- 6. 將JavaScript代碼轉換爲VBScript代碼?
- 7. 將Android代碼轉換爲MonoAndroid代碼
- 8. 將僞代碼轉換爲C#代碼
- 9. 將PHP代碼子集轉換爲Java/Scala/Groovy的工具?
- 10. 是否可以自動將Java代碼轉換爲PHP?
- 11. 如何將curl代碼轉換爲java
- 12. 如何將Java代碼轉換爲mapreduce?
- 13. 將Java AWT代碼轉換爲Android
- 14. 將Java代碼文檔轉換爲C#
- 15. 將代碼從Java轉換爲C#/ ASP.NET
- 16. 如何將Curl代碼轉換爲Java
- 17. 將代碼從Java轉換爲.NET
- 18. 將C代碼轉換爲Java:指針
- 19. 將Java加密代碼轉換爲NodeJS
- 20. 將jsp轉換爲java代碼
- 21. 將OpenCV代碼從C++轉換爲Java
- 22. 無法將Python代碼轉換爲Java
- 23. 將C代碼轉換爲Java
- 24. 將Python代碼轉換爲java
- 25. Java將Qt代碼轉換爲
- 26. 將目標C代碼轉換爲java代碼
- 27. 將Java源代碼轉換爲C++源代碼的工具
- 28. 將Ruby源代碼轉換爲Java源代碼
- 29. 將Objective-C代碼轉換爲Java代碼
- 30. 將C代碼轉換爲Java代碼:sscanf的
也許你的同事可以嘗試讀取Scala的例子,有很好的機會,他們沒有爲「可曉得cala「來了解代碼的功能。 – gerferra 2012-03-27 16:44:39
我[書面證明的概念在序言(https://gist.github.com/jarble/d4325e5a1a700129a8db20bde0b2c410),其轉換斯卡拉的一個子集到Java。它基於我的[universal-transpiler](https://github.com/jarble/universal-transpiler)庫。 – 2016-09-17 18:16:09