覆盖默认值

发布于 2024-12-13 01:27:56 字数 472 浏览 0 评论 0原文

我目前正在尝试扩展现有的项目。不幸的是我对 plexus 完全陌生。我对 Spring 有很大的偏见,所以请告诉我这种方法是否完全错误。

让我描述一下我想要做什么:

在现有项目中,有一个角色为“A”(实现默认A)的组件,其需求为角色“B”的“propertyB”。在同一个 Components.xml 中,有一个角色“B”的组件(实现 DefaultB)。这通常会自动注入到 DefaultA 的 propertyB 属性中。到目前为止,一切都很好。

现在我想创建一个由单独的 jar 提供的角色“B”(实现 SpecialB)的组件,并使其覆盖“DefaultB”的默认实现。

这可能吗?如果是的话......它是如何完成的?

我实际上想做的是创建一个 ModelValidator 作为 flexmojos maven 插件的一部分,它应该覆盖 Maven 3 的 DefaulModelValidator 实现。

Chris

I am currently trying to extend an existing project. Unfortunately I am completely new to plexus. I am greatly Spring biassed, so please tell me if the approach is completely wrong.

Let me describe what I want to do:

In the existing project there is a component with role "A" (Implementation DefaultA) that has a requirement "propertyB" of role "B". In the same components.xml there is a component of role "B" (Implementation DefaultB). This is usually automatically injected into the propertyB property of DefaultA. So far so good.

Now I would like to create a component of role "B" (Implementation SpecialB) provided by a separate jar and make that override the default implementation of "DefaultB".

Is this possible and if yes ... how is it done?

What I am actually trying to do, is to create a ModelValidator as part of the flexmojos maven plugin, which should override the DefaulModelValidator implementation of Maven 3.

Chris

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

池木 2024-12-20 01:27:56

好吧......所以解决方案实际上很简单。
如果您定义一个使用相同角色定义扩展相同接口的组件,并且只需将包含该组件的 jar 放在 MAVEN_HOME/lib/ext 目录中,则将使用您的组件而不是默认组件。

对此进行了记录并在我的公司 confluence 中上传了一个示例 Maven 项目:
https://dev.c-ware.de /confluence/display/PUBLIC/Flexmojos+in+Continously+Integration+Builds

克里斯

Ok ... so the solution is actually quite easy.
If you define a component extending the same interface with the same role-definition and simply place a jar with that component in the MAVEN_HOME/lib/ext directory, your component will be used instead of the default.

Documented this and uploaded a sample maven-project in my companies confluence:
https://dev.c-ware.de/confluence/display/PUBLIC/Flexmojos+in+Continuous+Integration+Builds

Chris

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文