de-vraag
  • Pertanyaan
  • Tag
  • Pengguna
Notifikasi
Imbalan
Registrasi
Setelah Anda mendaftar, Anda akan diberitahu tentang balasan dan komentar untuk pertanyaan Anda.
Gabung
Jika Anda sudah memiliki akun, masuk untuk memeriksa pemberitahuan baru.
Akan ada hadiah untuk pertanyaan, jawaban, dan komentar tambahan.
Lebih
Sumber
Sunting
 andPat
andPat
Question

Cara mengatur tertentu versi java untuk Maven

Pada mesin saya, saya memiliki dua versi jawa diinstal: (1.6 dan 1.7 diinstal secara manual oleh saya). Aku butuh keduanya untuk proyek yang berbeda. Tapi untuk Maven saya perlu 1.7, sekarang saya menggunakan Maven 1,6 versi java, bagaimana saya dapat mengatur Maven untuk menggunakan 1.7?

137 2013-10-29T09:41:03+00:00 16
Eric Leschinski
Eric Leschinski
Pertanyaan edit 30 Juni 2016 в 5:37
Pemrograman
maven
java-6
java-7
Solution / Answer
 DanielBarbarian
DanielBarbarian
29 Oktober 2013 в 9:47
2013-10-29T09:47:51+00:00
Lebih
Sumber
Sunting
#22652081

Maven menggunakan JAVA_HOME parameter untuk menemukan yang versi Java yang seharusnya dijalankan. Saya lihat dari komentar anda bahwa anda dapat't perubahan yang di konfigurasi.

  • Anda dapat mengatur JAVA_HOME parameter sebelum anda mulai maven (dan mengubahnya kembali setelah itu jika perlu).
  • Anda juga bisa pergi ke mvn(non-windows)/mvn.bat/mvn.cmd(windows) dan menetapkan versi jawa yang secara eksplisit tidak ada.
 DanielBarbarian
DanielBarbarian
Jawaban edit 11 Mei 2018 в 8:45
112
0
Edward Ross
Edward Ross
30 Maret 2017 в 3:38
2017-03-30T15:38:18+00:00
Lebih
Sumber
Sunting
#22652087

Di POM, anda dapat mengatur compiler sifat, misalnya untuk 1.8:

<project>
...
 <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>
...
</project>
67
0
Jonathan Landrum
Jonathan Landrum
20 April 2017 в 4:09
2017-04-20T16:09:22+00:00
Lebih
Sumber
Sunting
#22652088

Menambahkan solusi bagi orang dengan beberapa Java versi diinstal

Kami memiliki besar basis kode, yang sebagian besar adalah di pulau Jawa. Sebagian besar dari apa yang sedang saya kerjakan ini ditulis dalam Java 1.7 atau 1.8. Sejak JAVA_HOME adalah statis, saya membuat alias pada saya .bashrc untuk menjalankan Maven dengan nilai yang berbeda:

alias mvn5="JAVA_HOME=/usr/local/java5 && mvn"
alias mvn6="JAVA_HOME=/usr/local/java6 && mvn"
alias mvn7="JAVA_HOME=/usr/local/java7 && mvn"
alias mvn8="JAVA_HOME=/usr/local/java8 && mvn"

Hal ini memungkinkan saya menjalankan Maven dari baris perintah pada pengembangan mesin terlepas dari JDK versi yang digunakan pada proyek.

40
0
Ronan Quillevere
Ronan Quillevere
30 Juli 2015 в 8:11
2015-07-30T08:11:22+00:00
Lebih
Sumber
Sunting
#22652083

Pada windows

Jika anda tidak ingin mengubah anda JAVA_HOME variabel di dalam sistem variabel tersebut.

Mengedit mvn.bat file dan tambahkan baris seperti ini

set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_45\jre

Hal ini dapat dilakukan setelah @REM ==== MULAI VALIDASI ==== seperti disebutkan oleh @Jonathan

Pada Mac (& Linux ?)

Jika anda tidak ingin mengubah anda JAVA_HOME variabel dalam ~/.bashrc atau ~/.bash_profile

anda dapat membuat ~/.mavenrc file dan mendefinisikan anda JAVA_HOME menggunakan java_home tool

export JAVA_HOME=`/usr/libexec/java_home -v 1.7.0_45`

Pemeriksaan Kesehatan

Anda dapat memverifikasi bahwa semuanya bekerja dengan baik dengan menjalankan perintah berikut. Jdk versi harus berbeda.

mvn -versi

kemudian

jawa -versi

Ronan Quillevere
Ronan Quillevere
Jawaban edit 30 Juli 2015 в 8:19
31
0
 Jonathan
Jonathan
8 Mei 2014 в 2:49
2014-05-08T02:49:54+00:00
Lebih
Sumber
Sunting
#22652082

Menambahkan dua sen secara eksplisit dan memberikan solusi.

Saya memiliki dua JDKs diinstal pada Mesin Windows saya - JDK 1.5 dan JDK 1.6.

Default saya (dan mengatur sistem windows variabel lingkungan) JAVA_HOME diatur JDK 1.5.

Namun, saya memiliki maven project yang saya butuhkan untuk membangun (yaitu, JBehave Tutorial's Etsy.com) menggunakan JDK 1.6.

Solusi saya dalam skenario ini (yang bekerja!), ini seperti yang disarankan oleh @DanielBarbarian untuk mengatur hal ini dalam mvn.bat.

Untuk beberapa tidak akrab dengan jendela's file batch, saya pada dasarnya hanya menambahkan set JAVA_HOME=<path_to_other_jdk> setelah @REM ==== MULAI VALIDASI ==== di mvn.bat (yaitu, %MAVEN_HOME%\bin\mvn.bat):

@REM ==== START VALIDATION ====
set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_45\jre
if not "%JAVA_HOME%" == "" goto OkJHome
31
0
Ondrej Burkert
Ondrej Burkert
17 Februari 2016 в 5:27
2016-02-17T17:27:14+00:00
Lebih
Sumber
Sunting
#22652084

Saya baru-baru ini, setelah tujuh tahun yang panjang dengan Maven, belajar tentang toolchains.xml. Maven memiliki itu bahkan didokumentasikan dan mendukung dari 2.0.9 - toolchains dokumentasi

Jadi saya menambahkan toolchain.xml file untuk saya ~/.m2/ folder dengan konten berikut:

<toolchains xmlns="http://maven.apache.org/TOOLCHAINS/1.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://maven.apache.org/TOOLCHAINS/1.1.0 http://maven.apache.org/xsd/toolchains-1.1.0.xsd">
 <!-- JDK toolchains -->
 <toolchain>
   <type>jdk</type>
   <provides>
     <version>1.8</version>
     <vendor>sun</vendor>
   </provides>
   <configuration>
     <jdkHome>/opt/java8</jdkHome>
   </configuration>
 </toolchain>
 <toolchain>
   <type>jdk</type>
   <provides>
     <version>1.7</version>
     <vendor>sun</vendor>
   </provides>
   <configuration>
     <jdkHome>/opt/java7</jdkHome>
   </configuration>
 </toolchain>
</toolchains>

Hal ini memungkinkan anda untuk menentukan apa yang berbeda JDKs Maven dapat digunakan untuk membangun proyek terlepas dari JDK Maven berjalan dengan. Seperti saat anda menentukan JDK pada tingkat proyek dalam IDE.

25
0
 Tonino
Tonino
2 Februari 2017 в 9:25
2017-02-02T09:25:22+00:00
Lebih
Sumber
Sunting
#22652085

Untuk menghindari dampak untuk proyek anda dan untuk Variabel Lingkungan anda, anda dapat mengkonfigurasi Maven Compiler Plugin hanya untuk proyek's POM, menentukan Sumber dan Target versi jawa

  <plugins>
    <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.5.1</version>
        <configuration>
            <source>1.7</source>
            <target>1.7</target>
        </configuration>
    </plugin>
    ...
  </plugins>
4
0
 Pankaj
Pankaj
3 Maret 2017 в 12:23
2017-03-03T12:23:05+00:00
Lebih
Sumber
Sunting
#22652086

Salah satu solusi sederhana untuk masalah ini -

JAVA_HOME=/usr/lib/jvm/java-6-sun/ mvn clean install

Pada Mac, itu akan terlihat seperti -

JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_21.jdk/Isi/Home/ mvn clean install

PS: Satu hal yang saya temukan adalah atas perintah yang diberikan tidak bekerja pada 'ikan' shell. Saya juga punya bash shell yang tersedia dan bekerja dengan baik di sana. hanya menggunakan command 'bash' untuk beralih ke bash shell.

4
0
 Ranuka
Ranuka
7 Juni 2019 в 2:45
2019-06-07T02:45:55+00:00
Lebih
Sumber
Sunting
#22652093

Anda dapat mengatur Maven untuk menggunakan versi jawa yang mengikuti petunjuk di bawah ini.

Menginstal jenv di mesin anda link

Periksa tersedia java versi yang terinstal di mesin anda dengan mengeluarkan perintah berikut di command line.

jenv versi

Anda dapat menentukan global versi Java menggunakan perintah berikut.

jenv global oracle64-1.6.0.39

Anda dapat menentukan daerah Jawa versi untuk setiap direktori(Proyek) dengan menggunakan perintah berikut ini di direktori pada command line.

jenv lokal oracle64-1.7.0.11

tambahkan memperbaiki java versi anda pom.xml

jika anda menjalankan maven di command line install jenv maven plugin menggunakan perintah di bawah ini

jenv mengaktifkan plugin maven

Sekarang anda dapat mengkonfigurasi setiap versi java di komputer anda untuk setiap proyek dengan keluar masalah.

 Ranuka
Ranuka
Jawaban edit 11 Juni 2019 в 12:50
3
0
Bernhard Thalmayr
Bernhard Thalmayr
21 November 2018 в 1:48
2018-11-21T13:48:06+00:00
Lebih
Sumber
Sunting
#22652089

Pada Linux/Unix, yang JAVA_HOME dalam 'mvn' shell script digantikan oleh pengaturan di

$HOME/.mavenrc

silahkan https://stackoverflow.com/questions/37905648/where-to-add-java-home-and-maven-path-variables-in-linux

1
0
 Ruslan
Ruslan
30 Maret 2019 в 9:57
2019-03-30T21:57:35+00:00
Lebih
Sumber
Sunting
#22652092

Anda bisa mengkonfigurasi kompilasi menggunakan sumber-sumber yang berbeda JDK dengan maven-compiler-plugin.

Hanya menentukan jalan untuk javac di <eksekusi> tag. E. g untuk java11 itu terlihat seperti:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.8.0</version>
    <configuration>
        <source>11</source>
        <target>11</target>
        <fork>true</fork>
        <executable>C:\Program Files\Java\jdk-11.0.1\bin\javac</executable> <!--PATH TO JAVAC -->
    </configuration>
</plugin>
1
0
Guo Ferrell
Guo Ferrell
4 Juli 2019 в 6:56
2019-07-04T06:56:30+00:00
Lebih
Sumber
Sunting
#22652094

Di windows, saya hanya menambahkan beberapa batch file untuk berbagai JDK versi untuk Maven bin folder seperti ini:

mvn11.cmd cmd @echo off setlocal mengatur "JAVA_HOME=path\to\jdk11" mengatur "path=%JAVA_HOME%;%path%" mvn %* kemudian anda dapat menggunakan mvn11 untuk menjalankan Maven di tentukan JDK.

Guo Ferrell
Guo Ferrell
Jawaban edit 4 Juli 2019 в 7:41
1
0
 user2475448
user2475448
20 Agustus 2019 в 4:17
2019-08-20T16:17:44+00:00
Lebih
Sumber
Sunting
#22652095

Pada Mac, (dengan asumsi anda memiliki versi yang benar diinstal)

JAVA_HOME=`/usr/libexec/java_home -v 1.8` mvn clean install-DskipTests

1
0
Martin Vich
Martin Vich
31 Januari 2019 в 2:20
2019-01-31T14:20:21+00:00
Lebih
Sumber
Sunting
#22652091

Saya tidak memiliki keberhasilan pada mac dengan hanya pengaturan JAVA_HOME di konsol, tapi saya berhasil dengan pendekatan ini

  • Buat .mavenrc file anda di direktori home anda (sehingga file akan jalan akan ~/.mavenrc
  • Ke dalam file paste export JAVA_HOME=$(/usr/libexec/java_home -v 1.7)
0
0
Saveendra Ekanayake
Saveendra Ekanayake
22 Oktober 2019 в 8:48
2019-10-22T08:48:37+00:00
Lebih
Sumber
Sunting
#22652096

Tanpa mengubah Variabel Lingkungan, Anda dapat mengatur versi jawa yang didasarkan pada tingkat proyek dengan menggunakan Maven Compiler Plugin.

Metode 1

<properties>
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>
</properties>
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

Metode 2

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.7</source>
                <target>1.7</target>
            </configuration>
        </plugin>
    </plugins>
</build>
0
0
Alberto Perez
Alberto Perez
13 Desember 2018 в 10:33
2018-12-13T10:33:59+00:00
Lebih
Sumber
Sunting
#22652090

Anda juga dapat memiliki dua versi maven diinstal, dan mengedit one dari mereka, editing berikut:

mvn(non-windows)/mvn.bat/mvn.cmd(windows)

mengganti %java_home% penampilan ke jawa diinginkan path. Kemudian hanya menjalankan maven dari yang dimodifikasi jalan

0
0
Related communities 3
Programmer JAVA indonesia
Programmer JAVA indonesia
1 119 pengguna
Buka telegram
jvmusergroup
jvmusergroup
351 pengguna
Bismillahirrohmanirohim. Perhatian! Grup ini merupakan ekspansi dari grup Forum Java Programmer Indonesia di Facebook. Silahkan berbagi pengalaman dan masalah seputar Java dan keluarganya. https://t.me/JVMIndonesia Admin : @hendisantika34
Buka telegram
Java Indonesia🇲🇨
Java Indonesia🇲🇨
144 pengguna
Programmer Java Indonesia. Grup ini digunakan untuk bertanya terkait materi belajar Java / fullstack Warning=> -dilarang promosi(izin adm -18+🔞 - berbicara sopan - no spam /boot Mohon ikut aturan grup belum di keluarkan
Buka telegram
Tambahkan pertanyaan
Kategori
Semua
Teknologi
Budaya / Rekreasi
Kehidupan / Seni
Ilmu Pengetahuan
Profesional
Bisnis
Pengguna
Semua
Baru
Populer
1
Asilbek Qadamboyev
Terdaftar 6 jam yang lalu
2
Akshit Mehta
Terdaftar 2 hari yang lalu
3
me you
Terdaftar 5 hari yang lalu
4
Никита иванов
Terdaftar 1 minggu yang lalu
5
Alex1976G_06
Terdaftar 1 minggu yang lalu
ID
JA
RO
RU
TR
© de-vraag 2022
Sumber
stackoverflow.com
di bawah lisensi cc by-sa 3.0 dengan atribusi