Module 'xxx' is imported from Maven. Any changes may be lost after reimporting.

1,852 阅读1分钟

😠问题

⭐下面的问题我已经遇到过好几次了,并且反复解决过…

但不知道为什么每次重新加载 Maven 项目时都会再次出现该错误。

⭐直到今天,我才发现问题出在哪里~

修改了 Language Level 后提示:Module 'xxx' is imported from Maven. Any changes made in its configuration may be lost after reimporting

⭐所以这就会造成每次重新导入所有的 Maven projects 时都会将上次修改好的 jdk 8 更改为 jdk 13

重新导入后查看,果真恢复了(即每次修改 modul language level 只能保持该次项目可以正常进行,下次重新导入后仍然会报文章开头所展示的错误):

😁解决方法

在项目的 pom.xml 文件中,添加如下内容:

配置 source 和 target 都为 1.8(根据自己的需求设置),正是因为 pom.xml 中没有设置 jdk 版本,所以每次修改 pom.xml 后重新运行都会使其恢复默认版本 jdk 13.

<build>
    <plugins>
        <!-- 该插件保证了jdk始终使用1.8版本而非最新的jdk13:【解决了错误:java: 无效的源发行版: 13】 -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
                <encoding>UTF-8</encoding>
            </configuration>
        </plugin>
    </plugins>
</build>

如果对该问题有兴趣,可以关注 StackOverflow 上对该问题的解答!

希望本文对你有所帮助🧠
欢迎在评论区留下你的看法🌊,我们一起讨论与分享🔥