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 212061

Summary: ClassNotFoundException: org.eclipse.mylyn.internal.bugzilla.core.BugzillaRepositoryConnector
Product: platform Reporter: Tomas Danek <musilt2>
Component: Launchers&CLIAssignee: Jiri Rechtacek <jrechtacek>
Status: RESOLVED FIXED    
Severity: normal CC: davehun, jglick, jrechtacek, jtulach, mkleint, mmirilovic, muellermi, rrhegde
Priority: P2    
Version: 7.2   
Hardware: All   
OS: All   
Issue Type: DEFECT Exception Reporter: 187653
Attachments: stacktrace
logs with desired logging
possible patch on netbinox side
proposed patch of ide/launcher/unix/netbeans

Description Tomas Danek 2012-05-04 08:39:24 UTC
Build: NetBeans IDE 7.2 Beta (Build 201205031832)
VM: Java HotSpot(TM) 64-Bit Server VM, 20.6-b01-415, Java(TM) SE Runtime Environment, 1.6.0_31-b04-415-11M3635
OS: Mac OS X

User Comments:
musilt2: this is on second start of IDEc( i.e. not frsh user & cache dir). latest beta build




Stacktrace: 
java.lang.ClassNotFoundException: org.eclipse.mylyn.internal.bugzilla.core.BugzillaRepositoryConnector
   at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
   at java.security.AccessController.doPrivileged(AccessController.java:0)
   at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
   at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Comment 1 Tomas Danek 2012-05-04 08:39:31 UTC
Created attachment 119068 [details]
stacktrace
Comment 2 Tomas Danek 2012-05-04 08:51:25 UTC
after deleting user & cache dir I am not able to reproduce again :(
Comment 3 Tomas Danek 2012-05-04 09:55:57 UTC
I'm able to reproduce after there steps:
- delete user and cache dir
- install beta javase
- run it (shortcut from spotlight), do not import settings
- Team|Find issue...
- push "New" -> bugzilla dialog appears, close it
- Tools|Plugins -> install all modules from Beta UC
- confirm ide restart
- create new maven javase project
- close ide
- start ide again -> CNFE during startup
Comment 4 Tomas Danek 2012-05-04 10:01:44 UTC
something rotten is in 
/Users/tomas/Library/Caches/NetBeans/7.2beta/
(after steps in comment 3)
when i remove it, it starts to work.
Comment 5 Tomas Danek 2012-05-04 10:10:19 UTC
and just to narrow down even more, problem is in /Users/tomas/Library/Caches/NetBeans/7.2beta/netigso
(as expected)
(In reply to comment #4)
> something rotten is in 
> /Users/tomas/Library/Caches/NetBeans/7.2beta/
> (after steps in comment 3)
> when i remove it, it starts to work.
Comment 6 Jaroslav Tulach 2012-05-17 10:41:32 UTC
Single report from ten days ago. Closing.
Comment 7 Marian Mirilovic 2012-05-17 11:21:32 UTC
(In reply to comment #6)
> Single report from ten days ago. Closing.

Tomas, if you are able to reproduce - please REOPEN immediately.
Comment 8 Tomas Danek 2012-05-17 11:33:09 UTC
here you have newer log if you wish.... dev build, using steps in comment 3
Comment 10 Tomas Danek 2012-05-17 11:36:20 UTC
*** Bug 212633 has been marked as a duplicate of this bug. ***
Comment 11 Jaroslav Tulach 2012-05-18 12:37:42 UTC
Does this happen on all platforms or only on Mac. Can you demonstrate the problem for me?
Comment 12 Tomas Danek 2012-05-21 08:35:44 UTC
(In reply to comment #11)
> Can you demonstrate the problem for me?

Feel free to stop in my office.
Comment 13 Jaroslav Tulach 2012-05-22 06:13:27 UTC
*** Bug 212606 has been marked as a duplicate of this bug. ***
Comment 14 Jaroslav Tulach 2012-05-22 06:13:35 UTC
*** Bug 212610 has been marked as a duplicate of this bug. ***
Comment 15 Jaroslav Tulach 2012-05-22 06:13:43 UTC
*** Bug 212786 has been marked as a duplicate of this bug. ***
Comment 16 Jaroslav Tulach 2012-05-22 06:13:56 UTC
*** Bug 212799 has been marked as a duplicate of this bug. ***
Comment 17 Jaroslav Tulach 2012-05-22 11:02:45 UTC
BaseFile of some of the bundles is not correct. It should be relative to Resources/NetBeans directory on Mac, but it is not. It contains the "Resources/NetBeans" prefix again, thus (when the final path is being constructed), this part is duplicated. The JAR file then cannot be found.

Turning on more logging ergonomics#95ee511df2dc - this will print the value of "installArea" which is then used to make all paths relative.
Comment 18 Jaroslav Tulach 2012-05-22 12:08:31 UTC
A message like
INFO [org.netbeans.modules.netbinox]: Install area set to file:/apps/netbeans/
shall appear in every message.log. It will be interesting to find out if it differs somehow in a run preceding the one that throws the exception.
Comment 19 Jesse Glick 2012-05-22 17:13:24 UTC
So on a successful run (a rarity these days), I get

INFO [org.netbeans.modules.netbinox]: Install area set to file:/space/nb/curr/

which is in fact the IDE install dir. Will report back with log if I see the problem again.
Comment 20 Jesse Glick 2012-05-22 20:50:35 UTC
Same message printed in a run in which I got

SEVERE [org.netbeans.modules.netbinox]: framework event org.eclipse.equinox.registry type 2
java.lang.NullPointerException
	at org.eclipse.core.internal.runtime.ResourceTranslator.getResourceBundle(ResourceTranslator.java:69)
...
Comment 21 Quality Engineering 2012-05-23 09:49:38 UTC
Integrated into 'main-golden', will be available in build *201205230300* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
Changeset: http://hg.netbeans.org/main-golden/rev/95ee511df2dc
User: Jaroslav Tulach <jtulach@netbeans.org>
Log: #212061: Printing out the install area location
Comment 22 Jaroslav Tulach 2012-05-23 15:42:46 UTC
*** Bug 212847 has been marked as a duplicate of this bug. ***
Comment 23 Tomas Danek 2012-05-24 11:31:52 UTC
Created attachment 119810 [details]
logs with desired logging

attached /var/log/* logs with issue reproduced.
Comment 24 Jaroslav Tulach 2012-05-24 11:43:39 UTC
The updater is using paths like


INFO: File /Applications/NetBeans/NetBeans Dev 201205240002.app/Contents/MacOS/../Resources/NetBeans/bin/../cnd/modules/org-netbeans-modules-cnd-debugger-gdb2.jar.pack.gz deleted.
May 24, 2012 1:27:23 PM org.netbeans.updater.ModuleUpdater unpack

e.g. with two "..". That is pretty nasty!

The installation directory (from messages.log.2) is however absolutized properly:

/Applications/NetBeans/NetBeans Dev 201205240002.app/Contents/Resources/NetBeans/
and the install area is also correct:
Install area set to file:/Applications/NetBeans/NetBeans Dev 201205240002.app/Contents/Resources/NetBeans/

However for some reason, the install area for messages.log.1 is different:

Install area set to file:/Applications/NetBeans/NetBeans Dev 201205240002.app/Contents/

The last execution (messages.log) contains proper install area again, but obviously the paths are wrong as the subsequent error shows:

Install area set to file:/Applications/NetBeans/NetBeans Dev 201205240002.app/Contents/Resources/NetBeans/
opening reference:file:Resources/NetBeans/ide/modules/org-eclipse-equinox-registry.jar because of resource needing org/eclipse/core/internal/registry/OffsetTable.class
Error creating delegate for /Applications/NetBeans/NetBeans Dev 201205240002.app/Contents/Resources/NetBeans/Resources/NetBeans/ide/modules/org-eclipse-equinox-registry.jar
Comment 25 Jaroslav Tulach 2012-05-24 11:45:34 UTC
The problem might have some relation with launcher. Maybe the passed in parameters are different when the IDE is restarted.
Comment 26 Jiri Rechtacek 2012-05-24 12:05:12 UTC
(In reply to comment #25)
> The problem might have some relation with launcher. Maybe the passed in
> parameters are different when the IDE is restarted.

By the marked dups (issue 212606, issue 212610, issue 212786, issue 212799) it doesn't seem the problem is connected to Mac or with restarting IDE after installed updates.
Comment 27 Jaroslav Tulach 2012-05-24 12:23:58 UTC
OK, the error must be in a way we compute the install area. Could you please re-run the test with follwing patch:
http://hg.netbeans.org/ergonomics/rev/a934e5673116
Enough to have log from second run, I guess.
Comment 28 Jesse Glick 2012-05-24 17:29:26 UTC
(In reply to comment #24)
> Install area set to file:/Applications/NetBeans/NetBeans Dev
> 201205240002.app/Contents/Resources/NetBeans/

This is wrong, BTW; should be:

file:/Applications/NetBeans/NetBeans%20Dev%20201205240002.app/Contents/Resources/NetBeans/
Comment 29 Jesse Glick 2012-05-24 21:56:33 UTC
(In reply to comment #27)
> http://hg.netbeans.org/ergonomics/rev/a934e5673116
> Enough to have log from second run, I guess.

See http://statistics.netbeans.org/analytics/exception.do?id=582279 from bug #211733 which I guess is related (?).
Comment 30 Jaroslav Tulach 2012-05-25 07:04:00 UTC
> > Install area set to file:/Applications/NetBeans/NetBeans Dev
> > 201205240002.app/Contents/Resources/NetBeans/
> 
> This is wrong, BTW; should be:
> 
> file:/Applications/NetBeans/NetBeans%20Dev%20201205240002.app/Contents/Resources/NetBeans/

That would very likely broke Equinox - Equinox is well known for not understanding %20 and requiring " ".
Comment 31 Jiri Rechtacek 2012-05-25 13:27:38 UTC
I fall into this problem too. There is output of 'jps -v':
* 1st process is instance of IDE after restart by AU
* 2st process after my manually start IDE from icon
dhcp-prague08-second-floor-10-163-21-197:core-main lion$ jps -v
84856 Main -Djdk.home=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home -Dnetbeans.default_userdir_root=/Users/lion/Library/Application Support/NetBeans -Dnetbeans.system_http_proxy=PAC http://wpad/wpad.dat
http://wpad/wpad.dat -Dnetbeans.system_http_non_proxy_hosts= -Dnetbeans.dirs=/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/Resources/NetBeans/nb:/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/MacOS/../Resources/NetBeans/bin/../ergonomics:/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/Resources/NetBeans/ide:/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/Resources/NetBeans/java:/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/Resources/NetBeans/apisupport:/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/MacOS/../Resources/NetBeans/bin/../webcommon:/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/Resources/NetBeans/websvccommon:/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/MacOS/../Resources
dhcp-prague08-second-floor-10-163-21-197:core-main lion$ jps -v
85701 Main -Djdk.home=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home -Dnetbeans.default_userdir_root=/Users/lion/Library/Application Support/NetBeans -Dnetbeans.system_http_proxy=PAC http://wpad/wpad.dat
http://wpad/wpad.dat -Dnetbeans.system_http_non_proxy_hosts= -Dnetbeans.dirs=/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/Resources/NetBeans/nb:/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/MacOS/../Resources/NetBeans/bin/../ergonomics:/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/Resources/NetBeans/ide:/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/Resources/NetBeans/java:/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/Resources/NetBeans/apisupport:/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/MacOS/../Resources/NetBeans/bin/../webcommon:/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/Resources/NetBeans/websvccommon:/Applications/NetBeans/NetBeans Dev 201205140400.app/Contents/Resources/NetBeans
Comment 32 Jaroslav Tulach 2012-05-25 13:39:46 UTC
The different seems to be:

.app/Contents/MacOS/../Resources (first start)
.app/Contents/Resources/NetBeans (second start)

I am not sure why these directories are added to the list of clusters. In my opinion none of them should be there. The caching system relies on launcher to not mutate the netbeans.dirs value if there are no changes in installed modules. 

I am glad I can pass the bug to somebody else...
Comment 33 Jiri Rechtacek 2012-05-25 13:54:32 UTC
(In reply to comment #32)
> The different seems to be:
> 
> .app/Contents/MacOS/../Resources (first start)
> .app/Contents/Resources/NetBeans (second start)
I saw the difference too (that's the reason why I post it here :). I have no clue why the paths are there and why differs. I try figure out it. Anyway, I'm afraid this problem is not shared in all of duplicates of this one.

> I am not sure why these directories are added to the list of clusters. In my
> opinion none of them should be there. The caching system relies on launcher to
> not mutate the netbeans.dirs value if there are no changes in installed
> modules. 
> 
> I am glad I can pass the bug to somebody else...
Comment 34 Jesse Glick 2012-05-25 16:27:34 UTC
(In reply to comment #30)
> Equinox is well known for not understanding %20 and requiring " ".

Filed upstream?
Comment 35 Jiri Rechtacek 2012-05-29 13:38:28 UTC
Created attachment 119993 [details]
possible patch on netbinox side
Comment 36 Jiri Rechtacek 2012-05-29 17:00:31 UTC
Created attachment 120014 [details]
proposed patch of ide/launcher/unix/netbeans
Comment 37 Jiri Rechtacek 2012-05-29 17:02:56 UTC
Jesse, Jardo, please look on my patch. I can confirm it solves this problem. I'm going to integrate it tomorrow. Thanks
Comment 38 Jiri Rechtacek 2012-05-29 17:03:37 UTC
(In reply to comment #37)
> Jesse, Jardo, please look on my patch. I can confirm it solves this problem.
> I'm going to integrate it tomorrow. Thanks
I meant the proposed patch of ide/launcher/unix/netbeans.
Comment 39 Jaroslav Tulach 2012-05-29 21:57:00 UTC
Making sure absolute and canonical paths are used all the time is good idea. In readClusters I'd use: "$basedir"/etc/netbeans.clusters. 

"grep -v platform" is missing in readClusters. It should be there, imho. There is no point in including the platform cluster among the -Dnetbeans.dirs=...
Comment 40 Jesse Glick 2012-05-29 23:19:24 UTC
(In reply to comment #39)
> "grep -v platform" is missing in readClusters. It should be there, imho. There
> is no point in including the platform cluster among the -Dnetbeans.dirs=...

Right, ${netbeans.dirs} must _not_ include the platform cluster (that is given by ${netbeans.home}).

The removal of the test for absolute cluster names in readClusters also looks wrong. This will cause "/other/cluster" to be converted to "/opt/netbeans//other/cluster". I think the only things that should be changed in readClusters are "$progdir/../$X" -> "$basedir/$X" and "$progdir"/../etc/netbeans.clusters -> "$basedir"/etc/netbeans.clusters.

I guess the problem with the existing absolutize_paths was that it did not work for nonexistent clusters, right? (*) Is there a reason why nonexistent clusters are even included in ${netbeans.dirs} to begin with?

(*) http://stackoverflow.com/questions/284662/how-do-you-normalize-a-file-path-in-bash/10808025#10808025
Comment 41 Jiri Rechtacek 2012-05-30 07:11:37 UTC
(In reply to comment #40)
> (In reply to comment #39)
> > "grep -v platform" is missing in readClusters. It should be there, imho. There
> > is no point in including the platform cluster among the -Dnetbeans.dirs=...
> 
> Right, ${netbeans.dirs} must _not_ include the platform cluster (that is given
> by ${netbeans.home}).
> 
> The removal of the test for absolute cluster names in readClusters also looks
> wrong. This will cause "/other/cluster" to be converted to
> "/opt/netbeans//other/cluster". I think the only things that should be changed
> in readClusters are "$progdir/../$X" -> "$basedir/$X" and
> "$progdir"/../etc/netbeans.clusters -> "$basedir"/etc/netbeans.clusters.
Okay, I'll change the patch this way.

> I guess the problem with the existing absolutize_paths was that it did not work for nonexistent clusters, right? (*)
Right.

> Is there a reason why nonexistent clusters
> are even included in ${netbeans.dirs} to begin with?
AU can add new cluster (one of nonexistent clusters yet) thus it will be needed after restart IDE.
Comment 42 Jiri Rechtacek 2012-05-30 10:57:59 UTC
core-main/rev/2da99c8faadb
Comment 43 Tomas Danek 2012-05-31 13:23:14 UTC
*** Bug 213310 has been marked as a duplicate of this bug. ***
Comment 44 Quality Engineering 2012-06-01 05:28:54 UTC
Integrated into 'main-golden', will be available in build *201206010001* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
Changeset: http://hg.netbeans.org/main-golden/rev/2da99c8faadb
User: Jiri Rechtacek <jrechtacek@netbeans.org>
Log: #212061: ClassNotFoundException: org.eclipse.mylyn.internal.bugzilla.core.BugzillaRepositoryConnector
Comment 45 Jaroslav Tulach 2012-06-07 14:10:39 UTC
*** Bug 211840 has been marked as a duplicate of this bug. ***
Comment 46 Jaroslav Tulach 2012-06-27 17:45:35 UTC
*** Bug 214808 has been marked as a duplicate of this bug. ***
Comment 47 Jaroslav Tulach 2012-06-27 17:46:44 UTC
*** Bug 214811 has been marked as a duplicate of this bug. ***
Comment 48 Jaroslav Tulach 2012-06-27 17:47:12 UTC
*** Bug 214806 has been marked as a duplicate of this bug. ***
Comment 49 Jaroslav Tulach 2012-06-27 17:47:32 UTC
*** Bug 214809 has been marked as a duplicate of this bug. ***