maven編譯時指定jdk版本(設置maven的jdk)

本文目錄一覽:

如何修改maven的默認jdk版本

前置條件:Eclipse成功配置好Maven

環境:Eclipse 4.3.0,Maven 3.3.3

問題描述:Eclipse中,右鍵項目–Maven–Update Projcet,每次都把jdk版本變成1.5。

解決方法:在項目pom.xml文件中添加配置,或者在settings.xml文件中添加配置。

1.在pom.xml文件中添加配置

[html] view plain copy

build

plugins

plugin

groupIdorg.apache.maven.plugins/groupId

artifactIdmaven-compiler-plugin/artifactId

version3.1/version

configuration

!– jdk配置為1.7 —

source1.7/source

target1.7/target

/configuration

/plugin

/plugins

/build

2.在settings.xml文件中添加配置

[html] view plain copy

!– 設置全局jdk版本 —

profile

idjdk-1.7/id

activation

activeByDefaulttrue/activeByDefault

jdk1.7/jdk

/activation

properties

maven.compiler.source1.7/maven.compiler.source

maven.compiler.target1.7/maven.compiler.target

maven.compiler.compilerVersion1.7/maven.compiler.compilerVersion

/properties

/profile

這樣修改後,每次再Update Project時,就不會把jdk改變為1.5了。

本機只有一個jdk,版本也是固定的 怎麼在maven中還需要指定jdk版本呢?

maven中指定jdk版本是為了滿足不同的項目工程需求。

雖然本機可能只有一個JDK,但是JDK在一台電腦上是可以安裝多個的,並且不同的JDK版本,類庫也不完全一樣,所以需要具體項目指定具體JDK。

如果一個開發人員同時開發不同的項目,那麼就可能遇到這樣的情況,所以既然會有這樣的情況發生,那麼maven設計的時候自然要考慮進去。

這樣有不同的需求,就指定不同的版本,沒有這樣的需求,去指定一下版本也不至於太麻煩,所以就這樣設計了吧。

如何修改Maven的JDK版本

我們可以在pom里給它強制指定一下,比如我需要使用jdk 1.7 進行編譯 那麼配置如下 org.apache.maven.plugins maven-compiler-plugin 3.5.1 1.7 1.7 這樣再次update project後就會發現jdk變成1.7的了

如何設置eclipse maven默認jdk版本號

解決辦法:

解決辦法一:在項目中的pom.xml指定jdk版本,如下:

 build  

          plugins  

              plugin  

                  groupIdorg.apache.maven.plugins/groupId  

                  artifactIdmaven-compiler-plugin/artifactId  

                  version3.1/version  

                  configuration  

                      source1.8/source  

                      target1.8/target  

                 /configuration  

             /plugin  

         /plugins  

     /build

這個方法只能保證該項目是jdk1.8版本,每次新建項目都得加上面代碼,不推薦使用,推薦第二種方法。

解決方法二:在maven的安裝目錄找到settings.xml文件,在裡面添加如下代碼

 profile    

     idjdk-1.8/id    

      activation    

           activeByDefaulttrue/activeByDefault    

          jdk1.8/jdk    

       /activation    

 properties    

 maven.compiler.source1.8/maven.compiler.source    

maven.compiler.target1.8/maven.compiler.target    

maven.compiler.compilerVersion1.8/maven.compiler.compilerVersion    

/properties    

/profile

添加完後,在對eclipse進行設置。window-preferences-maven-user settings,user settings那裡選擇maven安裝目錄下的settings.xml文件。如下圖

設置完成後,右鍵項目-maven-update project,這樣每次新建maven項目都默認為jdk1.8版本了

解決方法三:

在解決方法二中,user settings的默認settigs.xml文件路徑為:c:\users\Hxinguan\.m2\settings.xml,如下圖。只要把設置好的settings.xml文件複製到該目錄下,然後update project就好了。

原創文章,作者:GQYQ,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/142430.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
GQYQ的頭像GQYQ
上一篇 2024-10-11 11:42
下一篇 2024-10-11 11:42

相關推薦

  • Git secbit:一種新型的安全Git版本

    Git secbit是一種新型的安全Git版本,它在保持Git原有功能的同時,針對Git存在的安全漏洞做出了很大的改進。下面我們將從多個方面對Git secbit做詳細地闡述。 一…

    編程 2025-04-29
  • JDK Flux 背壓測試

    本文將從多個方面對 JDK Flux 的背壓測試進行詳細闡述。 一、Flux 背景 Flux 是 JDK 9 對響應式編程的支持。它為響應式編程提供了一種基於推拉模型的方式,以支持…

    編程 2025-04-29
  • 如何將Java項目分成Modules並使用Git進行版本控制

    本文將向您展示如何將Java項目分成模塊,並使用Git對它們進行版本控制。分割Java項目可以使其更容易維護和拓展。Git版本控制還可以讓您跟蹤項目的發展並協作開發。 一、為什麼要…

    編程 2025-04-28
  • Python的版本演變

    Python是一門非常流行的編程語言,它有著簡潔、易讀、易寫的特點。自1991年由Guido van Rossum發明以來,Python已經發展成為一個成熟的編程語言,擁有多個版本…

    編程 2025-04-28
  • librosa版本用法介紹

    librosa是一個用於音頻信號處理的python庫,具有多種處理音頻的功能。在librosa庫中,版本號非常重要,在不同的版本中可能會存在一些差異。本文將圍繞librosa的版本…

    編程 2025-04-28
  • jmap是jdk裡面的嗎?

    jmap是JDK中的命令行工具,用於生成Java進程的堆轉儲快照。它是一個非常有用的工具,可以用於發現應用程序的內存泄漏和瓶頸。 一、jmap的作用 jmap是一個基於Java應用…

    編程 2025-04-28
  • burpsuite 免jdk

    burpsuite 可以說是滲透測試中最常用的一款工具之一,它可以幫助我們攔截和修改HTTP請求,還可以對這些請求進行分析和測試。而在使用過程中,我們有時會遇到一些坑點,比如安裝需…

    編程 2025-04-27
  • Java多版本支持實現方式

    本文將從以下幾個方面闡述如何實現Java多版本支持,並給出可行的代碼示例。 一、多版本Java環境概述 Java是一門跨平台的編程語言,但是在不同的應用場景下,可能需要使用不同版本…

    編程 2025-04-27
  • Taro3.5.11版本微信小程序端v-html依然無法解析video為中心的問題解決方案

    該問題的解決是通過使用 Taro3.5.11 版本自定義組件進行處理,具體解決方案如下: 一、自定義組件 首先,我們需要創建一個自定義組件 VideoComponent,該組件的主…

    編程 2025-04-27
  • 利用SeaweedFS版本進行大規模文件存儲與分配

    SeaweedFS是一個基於Go語言開發的分散式文件系統,它是一種高可用、高擴展性、高效率的解決方案。通過利用SeaweedFS版本,我們可以方便地實現大規模文件的存儲與分配。 一…

    編程 2025-04-27

發表回復

登錄後才能評論