问题描述
所以,我刚刚在我的新电脑上安装了 IntelliJ 并想在一个旧项目上工作,但现在 IntelliJ 再也找不到 maven-assembly-plugin。
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.1.1</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>main-class</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
我尝试打开“使用插件注册表”-选项失败并尝试多次重新导入,但无法导入程序集插件。我还检查了 .m2 文件夹,但它不包含程序集插件文件。此外,我很确定问题出在 IntelliJ 中的某个选项中,但我真的不知道这个选项在哪里,因为我对 IntelliJ 不是很熟悉。
解决方法
在 File -> Project Structure 上检查项目的版本,尝试使用右侧的 Maven 选项卡并刷新他。
如果不起作用,请尝试 File -> Project Structure -> Modules 。删除项目并在 Plus 和 Minor 按钮上重新添加
,我现在的解决方案是从 maven-assembly-plugin 切换到 maven-shade-plugin,这对我来说效果很好。但我不确定为什么其他插件不起作用。
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.3</version>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>main-class</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>