14
เป้าหมายที่ถูกต้องสำหรับตัวแปรสภาพแวดล้อม JAVA_HOME สำหรับการแจกจ่ายที่ใช้ Linux OpenJDK Debian คืออะไร
ใน Windows JAVA_HOMEต้องชี้ไปที่โฟลเดอร์การติดตั้ง JDK (เพื่อให้JAVA_HOME/binมีไฟล์ปฏิบัติการทั้งหมดและJAVA_HOME/libsมีjarไลบรารีเริ่มต้นทั้งหมด) หากฉันดาวน์โหลด JDK บันเดิลของ Sun และติดตั้งใน Linux ก็เป็นขั้นตอนเดียวกัน อย่างไรก็ตามฉันต้องใช้แพ็คเกจ OpenJDK เริ่มต้นของ Kubuntu ปัญหาคือว่า executables /usr/binทั้งหมดจะอยู่ใน /usr/share/javaแต่ไหจะอยู่ใน เนื่องจากไม่ได้อยู่ในJAVA_HOMEโฟลเดอร์เดียวกันฉันจึงมีปัญหากับ Grails และอาจมีปัญหากับแอปพลิเคชันอื่น ๆ ที่คาดว่าจะมีโครงสร้าง Java มาตรฐาน ถ้าฉันใช้: JAVA_HOME=/usr แอ็พพลิเคชันและสคริปต์ทั้งหมดที่ต้องการใช้ Java ที่สามารถเรียกใช้งานได้สามารถใช้โพรซีเดอร์มาตรฐานcall $JAVA_HOME/bin/executableได้ อย่างไรก็ตามเนื่องจากไหอยู่ในสถานที่อื่นจึงไม่พบเสมอไป (เช่นในจอกที่ฉันClassDefNotFoundหามาnative2ascii) ในทางกลับกันถ้าฉันใช้: JAVA_HOME=/usr/share/java ไม่มีของ executables Java ( java, javacฯลฯ ) สามารถพบได้ ดังนั้นวิธีที่ถูกต้องในการจัดการJAVA_HOMEตัวแปรใน Linux ที่ใช้ Debian คืออะไร? …