日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

IDEA配置JDK、Maven 常见错误总结

發(fā)布時(shí)間:2024/3/24 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 IDEA配置JDK、Maven 常见错误总结 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

IDEA配置JDK、Maven 常見錯(cuò)誤總結(jié)今天開始分享,新的項(xiàng)目要求更高版本的配置,比如要求JDK版本為11,或者新下載的項(xiàng)目JDK版本為11,而自己本地環(huán)境的是1.8版本的,依次需要升級(jí)版本到11。

1、問題產(chǎn)生的原因分析,啟動(dòng)新下載的項(xiàng)目時(shí)報(bào)錯(cuò)如下:

Error:(49, 86) java: 無法推斷com.fasterxml.jackson.core.type.TypeReference<T>的類型參數(shù)原因: -source 8 中不支持 '<>' 具有匿名的內(nèi)部類(請(qǐng)使用 -source 9 或更高版本以啟用 '<>' 具有匿名的內(nèi)部類)

顯然我IDEA上配置的JDK版本8 比較低,至少應(yīng)該是9。其實(shí)點(diǎn)擊紅色代碼出可以在pom文件自動(dòng)導(dǎo)入以下配置也可以臨時(shí)解決:

<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>9</source><target>9</target></configuration></plugin>

常用考慮,根據(jù)團(tuán)隊(duì)需求我安裝了JDK11,但是發(fā)現(xiàn)還是報(bào)同樣的錯(cuò)誤,于是我就懷疑Maven版本不對(duì)。

2、排查解決,查閱版本關(guān)系然后和同事確認(rèn)了一下,團(tuán)隊(duì)Maven版本為3.8.6,而我的本地配置的是3.3.9,顯然低了很多,于是我下載安裝了3.8.6版本的Maven,各種配置統(tǒng)一之后,有爆出新的錯(cuò)誤,點(diǎn)擊看到IDEA的日志:

2022-08-29 18:45:21,044 [34871123] ERROR - #org.jetbrains.idea.maven - IntelliJ IDEA 2020.1.2 Build #IU-201.7846.76 2022-08-29 18:45:21,044 [34871123] ERROR - #org.jetbrains.idea.maven - JDK: 11.0.7; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o. 2022-08-29 18:45:21,044 [34871123] ERROR - #org.jetbrains.idea.maven - OS: Windows 10 2022-08-29 18:45:21,048 [34871127] ERROR - #org.jetbrains.idea.maven - Last Action: Maven.Reimport 2022-08-29 18:45:25,492 [34875571] ERROR - #org.jetbrains.idea.maven - java.lang.RuntimeException: org.codehaus.plexus.component.repository.exception.ComponentLookupException: com.google.inject.ProvisionException: Unable to provision, see the following errors:1) Error injecting constructor, java.lang.NoSuchMethodError: org.apache.maven.model.validation.DefaultModelValidator: method 'void <init>()' not foundat org.jetbrains.idea.maven.server.embedder.CustomModelValidator.<init>(Unknown Source)while locating org.jetbrains.idea.maven.server.embedder.CustomModelValidatorat ClassRealm[maven.ext, parent: ClassRealm[plexus.core, parent: null]] (via modules: org.eclipse.sisu.wire.WireModule -> org.eclipse.sisu.plexus.PlexusBindingModule)while locating org.apache.maven.model.validation.ModelValidator annotated with @com.google.inject.name.Named(value="ide")1 errorrole: org.apache.maven.model.validation.ModelValidatorroleHint: ide java.lang.RuntimeException: java.lang.RuntimeException: org.codehaus.plexus.component.repository.exception.ComponentLookupException: com.google.inject.ProvisionException: Unable to provision, see the following errors:1) Error injecting constructor, java.lang.NoSuchMethodError: org.apache.maven.model.validation.DefaultModelValidator: method 'void <init>()' not foundat org.jetbrains.idea.maven.server.embedder.CustomModelValidator.<init>(Unknown Source)while locating org.jetbrains.idea.maven.server.embedder.CustomModelValidatorat ClassRealm[maven.ext, parent: ClassRealm[plexus.core, parent: null]] (via modules: org.eclipse.sisu.wire.WireModule -> org.eclipse.sisu.plexus.PlexusBindingModule)while locating org.apache.maven.model.validation.ModelValidator annotated with @com.google.inject.name.Named(value="ide")1 errorrole: org.apache.maven.model.validation.ModelValidatorroleHint: ideat org.jetbrains.idea.maven.server.Maven3XServerEmbedder.getComponent(Maven3XServerEmbedder.java:489)at org.jetbrains.idea.maven.server.Maven3XServerEmbedder.customizeComponents(Maven3XServerEmbedder.java:578)at org.jetbrains.idea.maven.server.Maven3XServerEmbedder.customize(Maven3XServerEmbedder.java:546)at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

顯然發(fā)現(xiàn)maven版本和idea版本不匹配,經(jīng)查閱,idea2020.1使用maven3.8.6會(huì)出現(xiàn)報(bào)錯(cuò)情況,換成3.6.3即可,于是下載安裝3.6.3,統(tǒng)一配置后,以上兩個(gè)問題迎刃而解,即pom文件不需要新加關(guān)于JDK9的配置,同時(shí)都兼容,即JDK11,Maven3.6.3,Idea 為2020版本。

3、如果還有問題,可以在maven的setting.xml 文件里添加配置試試,比如JDK11

<profile> <id>jdk-11</id> <activation> <activeByDefault>true</activeByDefault> <jdk>11</jdk> </activation> <properties> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> <maven.compiler.compilerVersion>11</maven.compiler.compilerVersion> </properties> </profile>

JDK1.8 配置:

<profile> <id>jdk-1.8</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.8</jdk> </activation> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion> </properties></profile>

到此、暫時(shí)告一段落!

總結(jié)

以上是生活随笔為你收集整理的IDEA配置JDK、Maven 常见错误总结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。