我正在使用IntelliJ Idea來編譯一個簡單的2-file Kotlin項目。我寧願使用命令行來編譯和運行。所以我想看看IDE發佈什麼命令來編譯和運行項目。我會怎麼做?你如何確定IntelliJ Idea發佈的編譯命令?
回答
如上所述通過CrazyCoder和as an answer to this question IntelliJ不調用命令行程序來構建應用程序,而是調用編譯器API。
還提到as an answer to this question是IntelliJ IDEA的有辦法將文件導出爲螞蟻工藝的事實:建設 - >生成Ant構建...。可以檢查該輸出文件,或者調用Ant來處理它,以便查看需要運行的命令。
不正是你想要的,但一個簡單的方法,讓編譯器命令行我所知道的是運行搖籃與調試日誌級別生成項目的:
./gradlew compileKotlin --debug | grep 'compiler args'
你會得到這樣的事情此:
14:23:57.754 [DEBUG] [org.gradle.api.Project] [科特林]科特林編譯ARGS:-d C:\ yourProjectPath \建立\科特林類\主-cp -no-stdlib -no-reflect -module C:\ Temp \ kjps1937184266353217163kotlingradlepluginapi.script.xml -module-name kotlin-gr adle-插件-API -jvm目標1.6 -Xadd編譯-內建-Xload-內建從 - 依賴性-language版本1.1 -API版本1.1 -Xcoroutines =警告
感謝您的回覆。我不知道或使用gradle,但是我的系統上已經有了它。然而,沒有gradlew,我看到它被稱爲Gradle Wrapper,並且「如果Gradle項目已經設置了Wrapper(並且我們建議所有項目都這樣做),那麼您可以使用以下命令之一執行構建該項目: 」。我猜IntelliJ Idea並沒有創建一個Gradle項目。 – Scooter
如果您打算使用kotlinc
編譯你的2個文件,你會做這樣的事情:
example.kt
fun say() {
println("hello world")
}
main.kt
fun main(args: Array<String>) {
say()
}
然後執行此操作將您的文件編譯到名爲的目錄中3210:
kotlinc main.kt example.kt -d classes
這來運行它:
kotlin -classpath classes MainKt
謝謝!如果沒有將kotlin運行時添加到他們說你需要在他們的kotlinc頁面上執行的編譯命令中,它是如何運行的?我猜「kotlin」包括(而「java」不)? – Scooter
是的,'kotlin'命令在類路徑中使用打包的kotlin-runtime運行它。 'java'命令對Kotlin沒有任何瞭解,因此您必須自己將運行時包含在classpath中,或者使用'-include-runtime'編譯它 –
- 1. Intellij IDEA 11:如何從.less編譯.css?
- 2. 如何查看javac命令IntelliJ IDEA用於編譯我的代碼?
- 3. Intellij Idea編譯器重新編譯已編譯的項目
- 4. 運行MVN命令使用的IntelliJ IDEA
- 5. Fernflower和IntelliJ IDEA的java反編譯器
- 6. Intellij idea CE命令行啓動mac osx
- 7. 通過intelliJ IDEA應用mvn命令
- 8. 在Intellij-Idea中跳過GWT編譯9
- 9. IntelliJ IDEA - 當你輸入
- 10. 在IntelliJ IDEA中VS發佈構建事件命令行相當於?
- 11. IntelliJ IDEA的爆發編輯的時間
- 12. 如何用命令「idea pom.xml」與Intellij命令行工具導入Maven項目?
- 13. 如何使用IntelliJ IDEA執行mvn命令?
- 14. 如何使用Intellij Idea代替eclipse來編譯mixare項目?
- 15. 如何反編譯爲java文件intellij idea
- 16. 編譯發佈
- 17. 命令行編譯
- 18. Intellij的HQL編輯器Idea
- 19. C#的命令行編譯#
- 20. 如何檢測visual studio編譯前/編譯後命令行中的調試/發佈?
- 21. 如何編譯命令行從
- 22. 如何從命令行編譯APK?
- 23. 的IntelliJ IDEA:斯卡拉插件:無編譯庫集的模塊
- 24. 如何編寫命令行發佈到Twitter的C#程序
- 25. Intellij Idea Android開發R.main
- 26. 使用IntelliJ IDEA中的命令行程序運行配置
- 27. IntelliJ IDEA項目文件的命令行生成?
- 28. IntelliJ IDEA:如何使依賴庫的源在編譯的類路徑中可用?
- 29. 你如何的IntelliJ
- 30. 如何編譯谷歌Protobuf命令行界面編譯
@tynn的IntelliJ我使用任何默認爲。爲了在命令行編譯,我不會使用Gradle。 – Scooter
@tynn沒有,沒有build.gradle文件。 – Scooter
@tynn IntelliJ允許生成Ant文件:Build-> Generate Ant Build。我不明白裏面的所有內容,但我注意到在任何地方都沒有「kotlinc」。 – Scooter