2011-05-13 49 views
3

我想知道當'maven build'有沒有辦法去掉一些註釋?任何方式去掉maven的一些註釋?

爲了方便起見,我註釋了一些第三方的註釋到我的POJO中,比如javax.persistence.*org.hibernate.annotations.*,org.apache.lucene.analysis.* ......等等等等。

當我將它們捆綁在一起並部署到JavaEE/Spring服務器/容器時,它運行良好。

但是在開發Android時,我想使我的代碼/ POJOs的使用量最大。我想直接導入foobar.core.User,而不是創建另一個沒有第三方註釋的foobar.android.User。也就是說,我不希望jar依賴於其他spring/hibernate工件。

那麼,有沒有什麼辦法可以在運行'maven build'時去掉一些註解?我只需要剝離「某些」第三方註釋,並保留定製的核心註釋。

因此,我可以分別或同時建立foobar-core.jarfoobar-core-stripped.jar

回答

0

如果您找不到能夠完成這項工作的非Maven工具,那麼您不會找到Maven插件。將註釋類的Mmake存根副本放入jar中,並將它們添加到Android的類路徑中。

1

試圖做同樣的事情。我發現了一個可以從編譯類中去除註釋的螞蟻任務。

http://sourceforge.net/projects/purgeannorefs/

Maven的螞蟻插件也可以被用來調用Ant任務的Maven構建的一部分。

我知道這是一個解決方法。但要比維護2個pojo對象更好。

+0

謝謝,它很有用。但仍然不是maven解決方案... :) – smallufo 2011-06-02 15:41:44

+0

現在似乎有一個maven插件,但該項目本身不在maven中心。 – 2015-12-19 06:43:27

0

您可以使用maven-antrun-插件做了查找和上的所有註釋更換......我這個在下面的答案註釋掉所有@XmlAttribute註釋:

https://stackoverflow.com/a/10036841/342745

類哈克,但它對我有用。