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 214018 - Ant test target doesn't work on jdk7 for mac
Summary: Ant test target doesn't work on jdk7 for mac
Status: VERIFIED FIXED
Alias: None
Product: platform
Classification: Unclassified
Component: NB JUnit (show other bugs)
Version: 7.2
Hardware: Macintosh (x86) Mac OS X
: P2 normal (vote)
Assignee: Tomas Hurka
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-06-12 06:42 UTC by Petr Cyhelsky
Modified: 2012-07-17 10:47 UTC (History)
3 users (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Petr Cyhelsky 2012-06-12 06:42:41 UTC
When running on jdk 1.7_04 (or other "non-apple-made") the automatic tests for netbeans can't be run, because the die thinks the jdk is not valid. It doesn't matter whether the jdk is installed from .dmg or just unzipped somewhere. It seems tools.jar is not on the class path for some reason... It is also the same when tests are run from die or from shell via ant "some test target". Other ant targets (run, debug, profile) seem to work ok.

output:

>System Info: 
  Product Version         = NetBeans Platform Dev (Build 20120611-7a72fca5bff1)
  Operating System        = Mac OS X version 10.7.4 running on x86_64
  Java; VM; Vendor        = 1.7.0_04; Java HotSpot(TM) 64-Bit Server VM 23.0-b21; Oracle Corporation
  Runtime                 = Java(TM) SE Runtime Environment 1.7.0_04-b21
  Java Home               = /Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre
  System Locale; Encoding = en_US (nb); US-ASCII
  Home Directory          = /Users/hudson
  Current Directory       = /
  User Directory          = /space/ergonomics/debugger.jpda/build/test/unit/work/userdir0
  Cache Directory         = /space/ergonomics/debugger.jpda/build/test/unit/work/userdir0/var/cache
  Installation            = /space/ergonomics/nbbuild/netbeans/extra
                            /space/ergonomics/nbbuild/netbeans/platform
                            /space/ergonomics/nbbuild/netbeans/harness
                            /space/ergonomics/nbbuild/netbeans/ide
                            /space/ergonomics/nbbuild/netbeans/java
                            /space/ergonomics/nbbuild/netbeans/platform
  Boot & Ext. Classpath   = /space/ergonomics/libs.javacapi/external/nb-javac-api.jar:/space/ergonomics/libs.javacimpl/external/nb-javac-impl.jar:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/sunrsasign.jar:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/JObjC.jar:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/classes:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/ext/dnsns.jar:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/ext/localedata.jar:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/ext/sunec.jar:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/ext/sunjce_provider.jar:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/ext/sunpkcs11.jar:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/ext/zipfs.jar:/System/Library/Java/Extensions/AppleScriptEngine.jar:/System/Library/Java/Extensions/dns_sd.jar:/System/Library/Java/Extensions/j3daudio.jar:/System/Library/Java/Extensions/j3dcore.jar:/System/Library/Java/Extensions/j3dutils.jar:/System/Library/Java/Extensions/jai_codec.jar:/System/Library/Java/Extensions/jai_core.jar:/System/Library/Java/Extensions/mlibwrapper_jai.jar:/System/Library/Java/Extensions/MRJToolkit.jar:/System/Library/Java/Extensions/QTJava.zip:/System/Library/Java/Extensions/vecmath.jar
  Application Classpath   = loaded by URLClassLoader file:/space/ergonomics/nbbuild/netbeans/platform/lib/boot.jar file:/space/ergonomics/nbbuild/netbeans/platform/lib/org-openide-modules.jar file:/space/ergonomics/nbbuild/netbeans/platform/lib/org-openide-util-lookup.jar file:/space/ergonomics/nbbuild/netbeans/platform/lib/org-openide-util.jar file:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/alt-rt.jar file:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/charsets.jar file:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/jce.jar file:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/jfr.jar file:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/jfxrt.jar file:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/JObjC.jar file:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/jsse.jar file:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/management-agent.jar file:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/resources.jar file:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/rt.jar
  Startup Classpath       = /space/ergonomics/nbbuild/netbeans/platform/core/core.jar:/space/ergonomics/nbbuild/netbeans/platform/core/org-openide-filesystems.jar
-------------------------------------------------------------------------------
INFO [org.netbeans.core.startup.ModuleList]
org.netbeans.InvalidException: <b>The JDK is missing and is required to run some NetBeans modules</b><br> Please use the --jdkhome command line option to specify a JDK<br>installation or see <a href="http://wiki.netbeans.org/FaqRunningOnJre">http://wiki.netbeans.org/FaqRunningOnJre</a> for<br> more information.
	at org.netbeans.ModuleManager.enable(ModuleManager.java:1077)
	at org.netbeans.ModuleManager.enable(ModuleManager.java:1000)
[catch] at org.netbeans.core.startup.ModuleList.installNew(ModuleList.java:340)
	at org.netbeans.core.startup.ModuleList.trigger(ModuleList.java:276)
	at org.netbeans.core.startup.ModuleSystem.restore(ModuleSystem.java:295)
	at org.netbeans.core.startup.Main.getModuleSystem(Main.java:169)
	at org.netbeans.core.startup.Main.start(Main.java:305)
	at org.netbeans.core.startup.TopThreadGroup.run(TopThreadGroup.java:123)
	at java.lang.Thread.run(Thread.java:722)
Warning - could not install module JPDA Debugger API
	org.netbeans.api.debugger.jpda - <b>The JDK is missing and is required to run some NetBeans modules</b><br> Please use the --jdkhome command line option to specify a JDK<br>installation or see <a href="http://wiki.netbeans.org/FaqRunningOnJre">http://wiki.netbeans.org/FaqRunningOnJre</a> for<br> more information.
	org.netbeans.modules.debugger.jpda.projects - The module org.netbeans.api.debugger.jpda would also need to be installed.
	org.netbeans.modules.debugger.jpda.ant - The module org.netbeans.api.debugger.jpda would also need to be installed.
	org.netbeans.modules.java.j2seproject - The module org.netbeans.modules.debugger.jpda.ant would also need to be installed.
	org.netbeans.modules.projectimport.eclipse.j2se - The module org.netbeans.modules.java.j2seproject would also need to be installed.
	org.netbeans.modules.java.examples - The module org.netbeans.modules.java.j2seproject would also need to be installed.
Comment 1 Jesse Glick 2012-06-12 13:15:27 UTC
Sounds like a launcher problem perhaps? Or if this only applies to functional tests, this should be in the nbjunit component... I have no Mac to evaluate with.
Comment 2 Jaroslav Tulach 2012-06-19 07:37:51 UTC
There was a special handling for layout of Mac OS X JDK by Apple. Now when the JDK is provided by Oracle, the layout is standardized. We need to find out whether the tests are running on Apple or Oracle JDK and use either the alternative or default behavior.

However I don't have Mac, so I cannot work on this bug.
Comment 3 Tomas Hurka 2012-06-19 14:18:58 UTC
Fixed in profiler-main

changeset:   224673:bfbae297c229
user:        Tomas Hurka <thurka@netbeans.org>
date:        Tue Jun 19 16:17:37 2012 +0200
summary:     bugfix #214018, Mac OS X can have both old and new JDK layout (JDK6 from Apple has old one, JDK7 from Oracle has new one)
Comment 4 Quality Engineering 2012-06-20 04:38:17 UTC
Integrated into 'main-golden', will be available in build *201206200001* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
Changeset: http://hg.netbeans.org/main-golden/rev/bfbae297c229
User: Tomas Hurka <thurka@netbeans.org>
Log: bugfix #214018, Mac OS X can have both old and new JDK layout (JDK6 from Apple has old one, JDK7 from Oracle has new one)
Comment 5 Jaroslav Tulach 2012-06-21 08:07:28 UTC
Good. Checking real installation structure is much more reasonable than guessing it from a type of operating system.
Comment 6 Petr Cyhelsky 2012-06-21 08:19:52 UTC
verified it still works on windows and linux
Comment 7 Tomas Hurka 2012-06-21 18:53:50 UTC
Fix transplanted to release72 branch

changeset:   232009:6d61c3c1bb08
branch:      release72
user:        Tomas Hurka <thurka@netbeans.org>
date:        Tue Jun 19 16:17:37 2012 +0200
summary:     bugfix #214018, Mac OS X can have both old and new JDK layout (JDK6 from Apple has old one, JDK7 from Oracle has new one)
Comment 8 Quality Engineering 2012-06-22 04:20:10 UTC
Integrated into 'releases', will be available in build *201206212341* or newer. Wait for official and publicly available build.
Changeset: http://hg.netbeans.org/releases/rev/6d61c3c1bb08
User: Tomas Hurka <thurka@netbeans.org>
Log: bugfix #214018, Mac OS X can have both old and new JDK layout (JDK6 from Apple has old one, JDK7 from Oracle has new one)
(transplanted from bfbae297c229309d5b9d1a1c4e81126373bd0aa4)
Comment 9 Marian Mirilovic 2012-06-24 20:15:08 UTC
... pending verification in NB 7.2
Comment 10 Petr Cyhelsky 2012-07-17 10:47:26 UTC
verified on 7.2