Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
maven-bundle-plugin-2.3.7
Description
If the finalName element in the build section contains elements that are dynamically populated, such as ${buildNumber}, and the packaging element is set to bundle, the literal string "${buildNumber}" will appear in the jar file that's produced. I took a look at the source code and found what I believe to be the problem and applied a fix in a local copy of the source code. In org/apache/felix/bundleplugin/BundleInfo.java:1113 there is this line of code:
String finalName = currentProject.getBuild().getFinalName();
I removed this line (1113) and added the following near the top of the class:
/**
- Name of the generated JAR.
- @parameter alias="jarName" expression="${jar.finalName}" default-value="${project.build.finalName}"
- @required
*/
private String finalName;
This properly populates the finalName in the jar file and all of the unit tests pass. I'm not sure if this affects anything else but as far as I can tell it doesn't.