Saya bingung dengan dua istilah ini.
Juga apa yang harus saya lakukan untuk membuat file di bawah folder src dari Proyek Spring MVC? Ketika saya membuat menggunakan objek File itu membuat file di dalam C: \ SpringSourceTool ... Saya rasa ini adalah ClassPath kan?
Bagaimana saya bisa mendapatkan applicationcontext
folder atau root dari aplikasi tersebut?
Classpath adalah cara konvensional untuk memberi tahu compiler Java (standar) dan runtime Java di mana menemukan class yang dikompilasi. Biasanya ini adalah urutan nama file JAR dan nama direktori. Classpath yang digunakan oleh compiler dan sistem runtime tidak harus sama, tetapi biasanya harus sama , terutama untuk project kecil.
Buildpath bukanlah terminologi Java standar. Ini adalah istilah untuk cara yang lebih kaya dimana IDE tipikal menentukan hubungan antara "proyek" yang membentuk sebuah aplikasi. IDE menggunakan ini untuk mengetahui classpath dan source untuk mengompilasi kode Java, dan classpath untuk menjalankannya. IDE juga menggunakan jalur build untuk mencari tahu cara mengemas kode Anda dan dependensinya sebagai (misalnya) file WAR.
Misalnya, jalur build Eclipse untuk suatu proyek menyertakan proyek lain yang bergantung padanya, dan mencantumkan JAR pustaka tambahan apa pun yang berisi / diandalkan oleh proyek tersebut. Ini juga mencantumkan paket dalam proyek saat ini yang dapat diandalkan oleh proyek hilir.
(Jika Anda menggunakan Maven untuk project Anda, mekanisme buildpath IDE adalah sekunder dari dependensi yang dideklarasikan dalam file POM. Misalnya, menggunakan Eclipse dengan m2eclipse, buildpath disintesis dari file POM.)
sumber
Jalur kelas digunakan pada waktu proses untuk memuat kelas dan sumber daya yang dikompilasi.
Jalur build digunakan pada waktu kompilasi untuk menemukan dependensi yang diperlukan untuk membangun project Anda.
sumber
.class
file (dan sumber daya yang dikompilasi lainnya), sedangkan jalur build digunakan untuk menemukan file sumber yang perlu dikompilasi?Setiap proyek Java memiliki jalur build-nya sendiri yang menentukan semua dependensi yang diperlukan untuk mengompilasi proyek. Dependensi tersebut mungkin berasal dari proyek Java lain di ruang kerja, dari arsip Java file .jar, atau dari folder yang berisi file .class.
Dalam lingkungan CLASSPATH Anda hanya perlu menentukan file .class (yaitu, jar, file zip - Di dalam jar, file zip Anda hanya akan menemukan kelas java) yaitu Anda membantu Java Virtual Machine (JVM) untuk menemukan file kelas Java
Di sinilah JVM dimulai, jika Anda ingin membuat file di tempat lain, gunakan jalur relatif dari sini.
Lihat ini dan ini untuk info lebih lanjut.
sumber
Saya ingin menambahkan jawaban Andreas_D untuk menjelaskan bahwa jalur build diperlukan oleh IDE / compiler untuk menemukan paket dan kelas eksternal yang digunakan oleh kode Anda. Kami terkadang menyebutnya sebagai 'ketergantungan' .
NB: Paket eksternal ini mungkin dikemas di dalam file .jar terkompresi atau memang, mungkin ada beberapa file jar yang dikemas di dalam 'perpustakaan' . Perpustakaan atau sekelompok perpustakaan sering kali membentuk 'kerangka kerja' .
Jika kode Anda memerlukan kode yang ditulis oleh orang lain, Anda dapat mengimpornya ke kelas Anda menggunakan
import
perintah. Namun, perintah ini sendiri tidak cukup karena compiler atau IDE perlu mengetahui di mana class tersebut berada. Anda menentukan ini di jalur build .Di
classpath
sisi lain, memberi tahu JVM yang menjalankan aplikasi Anda di mana menemukan dependensi selama eksekusi kode Anda yang sebenarnya.Juga yang perlu diperhatikan: Classpath untuk digunakan oleh JVM.
Buildpath untuk digunakan oleh IDE / compiler dan merupakan sarana untuk membangun classpath dari lingkungan pengembangan Anda. Saat Anda mengonfigurasi buildpath melalui IDE, Anda juga mengonfigurasi file tersembunyi dalam proyek Anda yang disebut .classpath. Ini digunakan untuk menyediakan jalur kelas ke JVM saat penerapan.
sumber
Classpath ( dari Wikipedia ):
Sederhananya - saat program Anda berjalan, JVM memuat kelas hanya jika diperlukan. Ketika sebuah kelas dibutuhkan, JVM akan bergantung pada classpath untuk mengetahui dari mana harus memuat bytecode (yaitu:
.class
file).Di sisi lain, jalur build biasanya digunakan oleh IDE, seperti Eclipse, untuk mengetahui tempat mencari library tambahan yang diperlukan untuk mengompilasi kode sumber proyek. Jalur build tidak digunakan selama runtime.
sumber