Maven中的MOJO是什么?


162

我现在在任何地方都在阅读有关Maven的文本,我看到了这个词(mojo)。我大概理解这意味着什么,但是我不会拒绝一个很好的解释。我试图用谷歌搜索,但只找到非行家的解释。

POJO-好的,但是MOJO吗?Maven旧Java对象?


2
:)据我了解-从某种意义上讲-这只是文字游戏...
dnim 2011年

Answers:



61

由于写在这里

Maven插件是一个Maven工件,其中包含一个插件描述符和一个或多个Mojos。在Maven中,可以将Mojo视为目标,并且每个目标都对应一个Mojo。该compiler:compile目标相当于CompilerMojo在Maven编译器插件类和jar:jar目标相当于JarMojo在Maven Jar插件类。当您编写自己的插件时,您只是在单个插件工件中将一组相关的Mojo(或目标)组合在一起。

Mojo只是与Maven目标相关联,因此可以说Mojo不仅仅是Maven中的目标。


5
到目前为止,这是最好的答案,很抱歉您没有更多的投票!其他答案没有提供比文档中更多的信息。
marcv81 2015年

1
@ marcv81不幸的是,它也是非原创的。直接从另一个来源复制并粘贴而没有任何归属。
Lynn在2015年

耻辱。仍然有用。
marcv81 2015年

16

Maven的网站说的Mojo是“Maven的” +“POJO(普通Java对象)”的组合。因此,MOJO = Maven旧Java对象。

但是,在Maven中,另一个不同的答案是我认为来自Maven网站管理人员的《完全参考》表明Mojo的意思是Magical POJO。


1
在页面的任何地方都看不到建议“ Magical POJO”的内容;如果有的话,该页面定义了mojo在经典上下文中的含义,以便说“但这与该定义无关”。
Lynn

链接的文件的最后一段中建议使用神奇的POJO(Maven:完整参考):Mojo? What is a Mojo? The word mojo is defined as "a magic charm or spell", "an amulet, often in a small flannel bag containing one or more magic items", and "personal magnetism; charm". Maven uses the term Mojo because it is a play on the word Pojo (Plain-old Java Object).
codefan-BK 2014年

@ codefan-BK如果Maven网站上说Mojo中的M代表Maven,那么您为什么要跳远思考,暗示它是Maven Magical POGO?已经定义好了。
林恩(Lynn)在2014年

2
@Lynn崩溃确实,按照您单独提供的链接后面的定义,您的简短答案非常详尽。但是,关于Javateer在第二个链接中提供的附加说明,人们发现,决定使用Mojo这个名字的人也认为也可以使用magical这个词。所以你们俩和Javateer都对。两种解释都只是阐明了同一主题的两个方面。我在这里没有矛盾,对吗?
codefan-BK 2014年

2
  • MOJO(中号的Aven ö LD Ĵ AVA ö bject)是在Maven的目标。

  • 在Maven中,一切都由插件完成,一个插件具有一个或多个相关的Mojo,即目标。

  • Mojo是Maven中的单个任务单元。

例如:elicpse:eclipse具有eclipse目标的eclipse插件是MOJO

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.