无法解析archetype-post-generation.groovy脚本中的依赖项

vxf3dgd4  于 2023-05-28  发布在  其他
关注(0)|答案(1)|浏览(113)

我在从一个maven自定义原型创建一个maven项目时遇到了一些问题。我有一个maven原型的预期目录结构,包括一个后生成的groovy脚本,我想在项目生成后立即在代理中创建一些Kafka主题。
原型项目的结构为:

/src/main/resources/archetype-resources/ DIRECTORY_STRUCTURE_FOR_MY_PROJECT
                   /META-INF----------------/maven/-archetype-metatada.xml
                                            /archetype-post-generate.groovy

target/
pom.xml

我的pom.xml具有以下结构:

<project>
  ...
  <packaging>maven-archetype</packaging>
  ...
  <build>
    <extensions>
      <extension>
        <groupId>org.apache.maven.archetype</groupId>
        <artifactId>archetype-packaging</artifactId>
        <version>3.2.1</version>
      </extension>
    </extensions>
 
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-archetype-plugin</artifactId>
          <version>3.2.1</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
<dependencies>
        <dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka-clients</artifactId>
    <version>3.4.0</version>
         </dependency>
</dependencies>
</project>

如果我运行mvn clean install,它可以正常工作。原型被创建并存储在我的本地目录中。
然而,如果我试图从该原型创建一个新项目(使用mvn原型:生成并引入所有东西)。artifactId,archetypeArtifactId....),我遇到了这个:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:3.2.1:generate (default-cli) on project standalone-pom: startup failed:
[ERROR] Script1.groovy: 9: unable to resolve class org.apache.kafka.common.errors.TopicExistsException
[ERROR] @ line 9, column 1.

无法解析依赖项。我是否应该为此目的以另一种方式添加依赖项?对于后生成的groovy脚本有什么不同吗?是否无法向后生成脚本添加依赖项?如果我在IntelliJ IDE中使用“Run”运行脚本,它可以完美地在pom.xml中添加依赖项。我也试过把依赖项放在maven-archetype-plugin的标签中。它不工作。
我将感激每一个答案。
非常感谢!

7uzetpgm

7uzetpgm1#

只需为每个依赖项添加@Grab(“groupId:artifactId:version”),并在每个@Grab符号下面导入,它就可以工作了。

相关问题