[ 
https://jira.codehaus.org/browse/MNBMODULE-155?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=287925#comment-287925
 ] 

Jesse Glick commented on MNBMODULE-155:
---------------------------------------

Where are the comments about script patch replacements? I do not like the idea 
of keeping copies of NBI code in the harness or mojo; necessary patches should 
be submitted upstream (to netbeans.org Bugzilla), and 
{{nbm-maven-harness/pom.xml}} may temporarily patch unpacked sources.

{{<id>>unpack-installer</id>}} is a typo (extra {{>}}).

The NB repo location should be defined in just one place, i.e.

{code:xml}
<properties>
    
<netbeans.repo>netbeans::default::http://bits.netbeans.org/maven2/</netbeans.repo>
</properties>
...
<remoteRepositories>${netbeans.repo}</remoteRepositories>
{code}

None of the changes to {{nbm-maven-plugin/pom.xml}} look both necessary and 
desirable. The POM already includes a ({{compile}}) dep on 
{{org.apache.ant:ant:1.8.2}} (which supersedes {{ant-nodeps}} in this release). 
{{ant-apache-regexp}} should not be necessary on any JDK 1.4+, since 
{{java.util.regex}} will be used automatically. The runtime dep on 
{{commons-lang}} is unexplained.

Finally, a dep on {{com.sun:tools}} with system scope cannot be accepted, 
because it will render the POM unloadable on JDKs which do not have a 
{{tools.jar}} in this location. Seems to be used just for {{native2ascii}}. One 
option would be to add this dep in a profile (conditional on the file path 
existing), though this is not very portable. Another would be to create a 
custom {{Native2AsciiAdapter}} and use it from the Ant script (patching NBI). 
Another would be to create a class in the mojo {{sun.tools.native2ascii.Main}} 
with a {{public boolean convert(String argv[])}} method (cannot be copied from 
JDK sources but may use the same signature).

{{harness/config/Modules/\*.xml}} should not be unpacked. Probably the same for 
{{harness/modules/\*.jar}} and {{harness/modules/locale/\*.jar}}, since it 
seems that everything important for the mojo is in 
{{harness/modules/ext/\*.jar}}. TBD whether the {{helloworld}} dirs can be 
removed too.

When I try to use the goal on a newly created app (from archetype), I get an 
error {{Icon file .../application/icon.png does not exist.}} Probably 
{{default-value="icon.png"}} and {{default-value="null"}} are bogus; try just 
{{@parameter}}. (According to 
http://maven.apache.org/developers/mojo-api-specification.html {{@optional}} 
does not exist.)

{{installerLicenseFile}} should be of type {{File}}, not {{String}}.

Exceptions should be wrapped with root cause: {{new MojoExecutionException( 
"Installer creation failed: " + ex , ex )}}

{{antHome}} is unset in my environment, leading to an NPE. Probably this whole 
block can be removed, but {{installerbuild/nbi_all/.common/common.xml}} has to 
be fixed to use {{<ant inheritrefs="false">}} rather than {{<exec 
executable="$\{ant.executable}">}} which is nonportable.

{{props}} should be a {{Map<String,String>}} rather than a {{Properties}}, 
allowing a simpler loop with no warning:

{code}
for ( Map.Entry<String,String> e : props.entrySet() ) {
    antProject.setProperty( e.getKey(), e.getValue() );
}
{code}
                
> Build installers goal
> ---------------------
>
>                 Key: MNBMODULE-155
>                 URL: https://jira.codehaus.org/browse/MNBMODULE-155
>             Project: Maven NetBeans Module Plugin
>          Issue Type: New Feature
>    Affects Versions: 3.6
>            Reporter: Frantisek Mantlik
>            Assignee: Jesse Glick
>         Attachments: build-installers.patch, nbm-installers-plugin.zip
>
>
> The proposal is to add a new goal which will provide similar functionality to 
> "Build installers" action in IDE for mavenized RCP projects as a maven goal.
> I have developed a standalone plugin based on Ant-maven-plugin functionality 
> which wrapped installer provided with Netbeans 6.9.1 and with minimum 
> tweaking (mainly allowing some basic branding of generated installer) run an 
> Ant task compiling and generating installers in the project application 
> artifact. It is working for me on several mavenized RCP projects without any 
> changes needed up to 7.1 RC1. 
> I was trying to offer my plugin to Codehaus, but there was no interest - 
> maybe because my advertisement was not good. I guess, that it should not be 
> difficult to extract the goal from my plugin and integrate it to the 
> nbm-maven-plugin as a new goal.
> Maybe, there would exist even easier way how to implement the same 
> functionality to the nbm-maven-plugin?
> If there is interest in such a new feature, I could promise to do my best 
> helping with development of the new goal. I am about to put one of my RCP 
> projects to open-source domain and such a publicly available function would 
> be helpful to it.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to