Rumah  >  Artikel  >  Cuba membina program menggunakan versi JDK yang tidak dipasang

Cuba membina program menggunakan versi JDK yang tidak dipasang

PHPz
PHPzke hadapan
2024-02-09 17:06:10856semak imbas

Editor PHP Xinyi memperkenalkan anda cara cuba membina program menggunakan versi JDK yang dinyahpasang. Semasa pembangunan, adalah penting untuk menggunakan versi JDK yang betul, tetapi kadangkala kita mungkin perlu mencuba menggunakan versi lain untuk menyelesaikan beberapa masalah. Pada masa ini, kami boleh menentukan versi JDK untuk digunakan dengan menetapkan pembolehubah persekitaran dan menggunakan alat baris arahan untuk membina program kami. Dalam artikel ini, kami akan memperincikan cara melakukan operasi ini untuk membantu anda menyelesaikan tugas pembangunan anda dengan lancar. Mari mulakan!

Kandungan soalan

Menggunakan pemasang oracle, saya memasang jdk-21 pada komputer windows. Tetapi apabila saya cuba membina projek saya mendapat ralat mengatakan gradlew tidak serasi jadi saya menyahpasang oracle jdk-21 dan sekarang saya telah memasang binaan adoptium dan menyediakan java_home menggunakan arahan ini

setx java_home“c:program fileseclipse adoptiumjdk-21.0.1.12-hotspot”

Apabila saya menjalankan di mana java dalam command prompt, saya mendapat:

c:\program files\eclipse adoptium\jdk.21.0.1.12-hotspot\bin\java.exe

Namun, apabila saya cuba membina projek, saya mendapat mesej ralat yang menyatakan bahawa fail boleh laku java "c:program filesjavajdk-21binjava.exe" tidak ditemui. Komputer saya nampaknya cuba mencari versi oracle yang saya nyahpasang.

Saya mengikut arahan dalam artikel ini untuk menetapkan %java_home%bin dalam laluan sistem, tetapi ia mengatakan yang boleh laku tidak ditemui.

Ini adalah entri pertama dalam laluan pembolehubah persekitaran saya

c:\program files\eclipse adoptium\jdk-21.0.1.12-hotspot\bin

Ini post terakhir saya

%JAVA_HOME%\bin

Mengapa program ingin membina dengan versi java yang dinyahpasang (iaitu versi oracle yang saya keluarkan)?

Pautan ini menunjukkan tangkapan skrin laluan java pada komputer windows saya.

Projek java spring ini adalah apa yang saya cuba bina.

Penyelesaian

Mungkin ini berkaitan dengan mekanisme caching gradle. Alih keluar .gradle/daemon/3d689bd3819ead35ed794427bd12f459/registry.bin 文件,它应该使用您的 JAVA_HOME pembolehubah persekitaran.

Berikut ialah dokumentasi daemon gred. Mungkin bahagian ini menyebabkan ralat seterusnya yang anda nyatakan dalam ulasan anda. Anda boleh menggunakan gradle 5a3616b73b29b6ef8523164b750a7aee --no-daemon untuk melumpuhkan daemon binaan semasa dan semak sama ada projek anda akan dibina.

Projek yang anda pautkan menggunakan Gradle 8.0.1. Menjalankannya dengan Java 21 tidak disokong, anda boleh melihatnya dalam https://docs.gradle.org/current/userguide/compatibility.html. Oleh itu, untuk membina projek ini tidak berubah, anda mesti menjalankan Gradle dengan sehingga Java 19.

Masih menggunakan pemasangan Java lama walaupun JAVA_HOME ditetapkan ke lokasi baharu kedengaran pelik jika anda benar-benar menjalankan Gradle dari baris arahan. Jika anda menjalankannya daripada IDE, anda mesti menyemak tetapan IDE.

Sekarang saya hanya boleh membayangkan bahawa dalam GRADLE_USER_HOME (通常是你的用户主目录中的 .gradle/ )中,你有一个 gradle.properties anda, anda boleh menetapkan laluan ke pemasangan Java lama anda.

Jika ini tidak berlaku, persoalannya ialah, apakah output sebenar anda cuba menjalankan binaan dan dari mana sebenarnya ralat itu datang. Jika ia datang daripada skrip pembalut Gradle, anda boleh mematikan penindasan gema untuk melihat perkara yang sebenarnya berlaku.

Atas ialah kandungan terperinci Cuba membina program menggunakan versi JDK yang tidak dipasang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam