Saya baru saja mulai dengan pengembangan Scala / LiftWeb / Sbt, dan saya ingin mengimpor proyek Sbt di IntelliJ Idea. Sebenarnya, saya berhasil mengimpor proyek saya dengan dua cara berbeda:
1) dengan Maven. Saya membuat proyek Maven, dan yang paling penting, saya membuat proyek Sbt, yang kemudian saya impor di IntelliJ. Saya kemudian dapat dengan mudah memulai, menghentikan server dermaga, dan melakukan hal-hal lain. Tapi bukan itu yang saya inginkan. Saya ingin melakukan hal yang sama, hanya bebas Maven. Itu menuntun saya ke
2) dengan Eclipse. Jadi, saya membuat proyek Sbt baru (dengan skrip kecil yang saya tulis, mengonfigurasi proyek Sbt menjadi Proyek Web). Saya kemudian menggunakan plugin sbt-eclipsify untuk 'mengubah' proyek untuk Eclipse, yang kemudian saya impor di IntelliJ (sumber yang ada -> gerhana). Tapi masalahnya dimulai di sini: Saya tidak bisa mengaktifkan plugin IntelliJ Sbt.
Adakah yang bisa membantu saya dengan ini?
sumber
Jawaban:
Ada tiga cara dasar cara membuat proyek - IntelliJ versi modern dapat mengimpor proyek sbt, jika tidak Anda bisa menggunakan plugin sbt untuk menghasilkan proyek IntelliJ, atau menggunakan plugin IntelliJ Scala untuk membuat proyek sbt. Fitur dasar bekerja di luar kotak menggunakan kedua solusi, beberapa build kompleks dapat mengalami masalah, jadi coba alat lain untuk melihat apakah itu berfungsi di sana.
IntelliJ
IntelliJ IDEA menjadi jauh lebih baik hari ini. Versi saat ini (14.0.2) mendukung proyek sbt di luar kotak dengan plugin Scala. Cukup instal plugin dan Anda harus dapat membuka proyek Scala / sbt tanpa masalah.
Dengan plugin, tunjuk saja pada proyek sbt dan IDEA akan menawarkan kepada Anda panduan untuk membuka proyek semacam itu.
Plugin IntelliJ Scala
Plugin IntelliJ dapat ditemukan di sini http://confluence.jetbrains.com/display/SCA/Scala+Plugin+for+IntelliJ+IDEA atau dapat diinstal secara langsung dari dalam IDE menggunakan Pengaturan -> dialog Plugins. Setelah itu kita bisa melakukan File -> New Project -> Scala -> berbasis SBT. IntelliJ akan menghasilkan build.sbt dasar, unduh dependensi yang diperlukan, dan buka proyek.
Plugin SBT
Plugin Sbt yang menghasilkan proyek ide berdasarkan file sbt dapat ditemukan di sini: https://github.com/mpeltonen/sbt-idea
SBT 12.0+ & 13.0+
Cukup tambahkan
addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.5.2")
ke Andabuild.sbt
; tidak ada resolusi tambahan yang diperlukan.Versi Lama:
SBT 0,11+
Buat dan tambahkan baris berikut ke
~/.sbt/plugins/build.sbt
ATAUPROJECT_DIR/project/plugins.sbt
Gunakan
gen-idea
di sbt untuk membuat file proyek IDEA.Secara default, pengklasifikasi (sumber dan javadocs) dari sbt dan dependensi perpustakaan dimuat jika ditemukan dan referensi ditambahkan ke file proyek IDEA. Jika Anda tidak ingin mengunduh / mereferensikannya, gunakan perintah
gen-idea no-classifiers no-sbt-classifiers
.SBT 0.10.1 (menurut pembuat plugin, 0.10.0 tidak akan berfungsi!)
Buat dan tambahkan baris berikut ke ~ / .sbt / plugins / build.sbt:
Gunakan
gen-idea
tugas sbt untuk membuat file proyek IDEA.Secara default, pengklasifikasi (sumber dan javadocs) dari sbt dan dependensi perpustakaan dimuat jika ditemukan dan referensi ditambahkan ke file proyek IDEA. Jika Anda tidak ingin mengunduh / mereferensikannya, gunakan perintah
gen-idea no-classifiers no-sbt-classifiers
.SBT 0.7
Untuk menggunakannya, cukup jalankan ini dari shell sbt Anda, itu akan menggunakan plugin sebagai program eksternal:
Anda juga dapat menambahkan sifat dalam definisi proyek Anda, seperti yang Anda inginkan:
sumber
Untuk saat ini saya melakukan ini dengan tangan. Cukup sederhana.
Itu dari ingatan. Akan lebih baik jika itu otomatis, tetapi itu bukan masalah besar seperti sekarang.
Satu catatan kehati-hatian: Pendekatan di atas tidak bekerja dengan baik dengan sbt sekolah-baru, yaitu versi 0.10 dan yang lebih baru, karena tidak menyalin dependensi ke lib_managed secara default. Anda dapat menambahkan
ke build.sbt Anda untuk membuatnya menyalin dependensi ke lib_managed.
sumber
Tempus fugit dan IntelliJ IDEA menjadi jauh lebih baik hari ini. Bagaimanapun juga, ini tahun 2015, bukan?
Karena itu, versi terbaru dari IntelliJ IDEA 14.0.2 mendukung proyek sbt di luar kotak dengan plugin Scala . Cukup instal plugin dan Anda harus dapat membuka proyek Scala / sbt tanpa banyak masalah.
Saya menggunakan versi Early Access dari plugin yang 1.2.67.6.EAP pada saat penulisan.
Dengan plugin arahkan saja ke proyek sbt dan IDEA akan menawarkan kepada Anda panduan untuk membuka proyek semacam itu.
Tentang sbt-idea dalam sbt 0.12.4
Untuk sbt 0.12.4 file konfigurasi plugin di seluruh sistem -
~/.sbt/plugins/build.sbt
atauPROJECT_DIR/project/plugins.sbt
- harus memiliki baris berikut:Jalankan
sbt gen-idea
untuk menghasilkan file proyek IDEA.Baca situs web plugin sbt-idea untuk informasi lebih lanjut. Anda juga dapat menemukan entri blog saya Mengimpor proyek berbasis sbt ke IntelliJ IDEA 13 (dengan sbt-idea, Scala 2.11 dan sbt 0.12) berguna.
sumber
Untuk sbt 0.7
Lihat jawabannya di tempat lain di halaman ini .
Untuk sbt 0,10
Klon dan bangun ide-sbt Ismael:
Buat direktori lib plugin sbt jika Anda belum memilikinya
Salin toples yang dibuat pada langkah pertama ke sini
Mulai ulang atau muat ulang sbt, lalu Anda dapat menjalankan
gen-idea
(ataugen-idea with-classifiers
jika Anda menginginkan sumber dan javadoc di intelliJ juga)Sumber: Saran Tackers tentang grup pesan .
Dalam IntelliJ IDEA 13.x itu sendiri
Anda dapat membuka proyek berbasis SBT di IDEA saat ini. Ini akan membuat proyek dan modul yang diperlukan, dan menjaga agar dependensi Anda tetap terbaru setiap kali Anda membuat perubahan pada skrip build.
sumber
Saya baru saja melewati semua rasa sakit ini. Saya menghabiskan waktu berhari-hari untuk meningkatkan lingkungan yang dapat diterima dan sampai pada kesimpulan bahwa ENSIME, SBT, dan JRebel akan menjadi lingkungan pengembangan saya selama beberapa waktu. Ya, itu akan kembali ke Emacs, tetapi ENSIME mengubahnya menjadi sedikit atau gagasan dengan refactoring, dukungan debugging, navigasi, dll. Ini tidak jauh dari Eclipse (Java), tetapi kecuali jika scala plugins bekerja lebih baik itu adalah terbaik yang kita miliki.
Sampai lingkungan pengembangan Scala bangun untuk menghabisi (Eclipse atau IntelliJ) saya tidak akan repot. Mereka terlalu buggy.
Lihat diskusi di situs lift.
http://groups.google.com/group/liftweb/browse_thread/thread/6e38ae7396575052#
Di dalam utas itu, ada tautan ke HOWTO untuk IntelliJ, tetapi meskipun agak berfungsi, ada banyak masalah yang membuatnya sedikit kurang bermanfaat.
http://blog.morroni.com/2010/07/14/setup-intellij-9-for-lift-framework-development/comment-page-1/
sumber
Jawabannya sudah tua untuk 2014. Di IntelliJ 13.x , plugin Scala adalah ver 0.41.2 (SBT disertakan).
Saya versi SBT adalah 0.13.5 (terminal:
sbt sbtVersion
)Buka folder root proyek dan masukkan di terminal
Anda akan melihat dua folder tersembunyi .idea dan .idea_modules .
Kemudian di IntelliJ, File> Open> pilih proyek. Itu harus membuka proyek tanpa masalah.
sumber
Sebelum Anda mulai membuat proyek SBT, pastikan plugin Scala diunduh dan diaktifkan di IntelliJ IDEA.
tautan di bawah ini menjelaskan semua yang perlu Anda ketahui.
https://www.jetbrains.com/help/idea/2016.1/getting-started-with-sbt.html
sumber