In 1.27 of plugin.jelly, the following code was introduced:
<j:choose>
<j:when test="${isGenerateAppXML == 'true'}">
<attainGoal name="ear:generate-ear-descriptor"/> <attainGoal name="ear:generate-ear-descriptor"/>
</j:when>
<j:otherwise>
<util:available file="${maven.ear.src}/META-INF/application.xml">
<ant:copy file="${maven.ear.appxml}" tofile="${finalAppxml}"/>
</util:available>
</j:otherwise>
</j:choose>
The hard coding of ${maven.ear.src}/META-INF/application.xml means that any application that previously provided a value for ${maven.ear.appxml} that wasn't in the hard coded and default location, no longer gets their application.xml bundled.
This breaks the ear.
Please change to
<util:available file="${maven.ear.appxml}">
<ant:copy file="${maven.ear.appxml}" tofile="${finalAppxml}"/>
</util:available>
Committed to svn