Java小白提问,为什么我的IDEA中Maven设置必须勾选Runner下的Delegate IDE build/run actions to Maven才能运行?不然就会报错程序包xxx不存在。我确保jar包都是已经下载到本地仓库中的,源码也能打开,但是编译就出错。我也尝试过清缓存以及mvn idea:idea等操作,但一旦我改变pom.xml文件,增添新的依赖,就需要重新清缓存、执行mvn idea:idea操作。而且在打包成war包时,也会出现问题。Maven是自己下载的,不是IDEA自带的。
IDEA版本是2020.1.1,
Maven版本是3.6.3
这是我的settings.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<localRepository>D:\Software\Java\Maven\repository</localRepository>
<pluginGroups></pluginGroups>
<proxies></proxies>
<servers></servers>
<mirrors>
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>https://maven.aliyun.com/repository/central/</url>
</mirror>
<mirror>
<id>repo1</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo1.maven.org/maven2/</url>
</mirror>
<mirror>
<id>repo2</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo2.maven.org/maven2/</url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>jdk-11</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>11</jdk>
</activation>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<maven.compiler.compilerVersion>11</maven.compiler.compilerVersion>
</properties>
</profile>
</profiles>
</settings>
打开idea的preferences配置画面
点开[Build, Excution, Deployment/Build Tool/Maven]设置画面,查看meven路径以及setting,repository路径是不是和你自己下载的mave及配置路相同径,如果不是则修改为你自己的maven路径及配置路径
现在我来统一回复一下大家关于这个问题的疑问吧!其实这个就是IDEA版本与Maven之间存在的问题,看到你们的IDEA的版本是2020版的,问题就在这里,2020版的IDEA是无法导入MAVEN工程的jar包的,所以就需要我们强制的进行导入,如果你细心,你就会发现2020版的IDEA上是没有File → Settings → Importing → Import Maven projects automatically → OK这个路径的。
其实勾选这个选项只是其中的一种解决方案,还有一种解决方案就是修改本地仓库的路径,同样可以屏蔽掉这个问题。
最后我想说的是,其实这就是一个大坑。真是坑死我了。
还有一种解决方案就是修改本地仓库的路径,请问这个修改本地仓库路径具体是指?
用户下的.m2就可以 也不知道哪个版本能改好
-DarchetypeCatalog=internal
我也遇到这样的问题,1楼的回复试了一下是可以的,还有一点要注意的maven 的版本不能太高,