gpt4 book ai didi

maven-2 - maven使用@component注入(inject)mojo

转载 作者:行者123 更新时间:2023-12-02 14:48:39 34 4
gpt4 key购买 nike

我有一个由一些mojos组成的maven插件。假设有myproject.FirstMojo 首先声明为 @goal和myproject.SecondMojo 声明为@goal Second

我想要做的是将第一个 mojo 作为第二个 mojo 的属性注入(inject)。我尝试过通过以下方式声明它:

/**
* @component role="myproject.FirstMojo"
*/
private FirstMojo first;

不幸的是,这样做时,我收到在组件存储库中找不到组件描述符:错误。

我应该做什么?

最佳答案

您可以使用:

/** @component role="org.apache.maven.plugin.Mojo" role-hint="groupId:artifactId:version:second" */
private FirstMojo first;

请注意,它们必须位于同一插件中,并且您必须将组、工件和版本替换为您的值。这可能会涉及过滤源代码以获得正确的版本,这使得它有点复杂。

我强烈建议将您需要的功能分解到一个单独的类(如果您需要访问其中的某些组件,则可能是一个 Plexus 组件)或一个抽象基类。

关于maven-2 - maven使用@component注入(inject)mojo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2378588/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com