This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 220898

Summary: bundle.properties file is deleted in a Maven-based NB Platform project
Product: apisupport Reporter: gregersen <gregersen>
Component: MavenAssignee: Milos Kleint <mkleint>
Status: RESOLVED DUPLICATE    
Severity: normal    
Priority: P1    
Version: 7.3   
Hardware: PC   
OS: Windows 7   
Issue Type: DEFECT Exception Reporter:

Description gregersen 2012-10-26 08:45:32 UTC
I'm currently implementing reload on save for Javeleon in NB Platform-based apps. I completed the ant-based integration and I'm now moving on to Maven-based platform development. I'm running into a subtle issue which I think is caused by the IDE Maven integration. It turns out that the annotation pre-processor which is used to parse e.g. Action class annotations does not re-generate the bundle.properties file when you compile an action class. This causes runtime issues after a reload with a class reloading system such as JRebel or Javeleon(CCE and missing resource failures).

Steps to reproduce:

1. create a Maven NB Platform sample application with a sample module
2. create an action in the sample module
3. build everything and run
4. Check that the bundle.properties file is located under target/classes/yourdomain
5. Make a change to the action class and compile (can be compile on save)
6. now the old bundle.properties is deleted from target/classes and no new file is generated!

While this has no effect for non-class reloading development, since on the next restart everything is built properly again, this completely breaks class-reloading systems such as JRebel and Javeleon. I can provide a test NBM of Javeleon with reload on save functionality if you wish to reproduce, but I don't think it is necessary to fix the problem.

Currently know workaround is to do a project-wide Clean & Build which will re-generates the bundle.properties file, but this somewhat defeats the purpose of transparent class reloading as this can take a long time, especially with Maven.

A project build will also re-generate the bundle.properties, but it will result in a missing resource execption at runtime and the menu entry will be blank, even when you run without a class reloading system.
Comment 1 Milos Kleint 2012-10-29 06:37:18 UTC

*** This bug has been marked as a duplicate of bug 220677 ***