You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by ak...@apache.org on 2006/08/24 02:36:53 UTC

svn commit: r434272 - /incubator/felix/trunk/tools/maven2/maven-felix-plugin/src/main/java/org/apache/felix/tools/maven/felix/plugin/FelixRunMojo.java

Author: akarasulu
Date: Wed Aug 23 17:36:53 2006
New Revision: 434272

URL: http://svn.apache.org/viewvc?rev=434272&view=rev
Log:
Adding the package exports for various versions of the JRE.

Modified:
    incubator/felix/trunk/tools/maven2/maven-felix-plugin/src/main/java/org/apache/felix/tools/maven/felix/plugin/FelixRunMojo.java

Modified: incubator/felix/trunk/tools/maven2/maven-felix-plugin/src/main/java/org/apache/felix/tools/maven/felix/plugin/FelixRunMojo.java
URL: http://svn.apache.org/viewvc/incubator/felix/trunk/tools/maven2/maven-felix-plugin/src/main/java/org/apache/felix/tools/maven/felix/plugin/FelixRunMojo.java?rev=434272&r1=434271&r2=434272&view=diff
==============================================================================
--- incubator/felix/trunk/tools/maven2/maven-felix-plugin/src/main/java/org/apache/felix/tools/maven/felix/plugin/FelixRunMojo.java (original)
+++ incubator/felix/trunk/tools/maven2/maven-felix-plugin/src/main/java/org/apache/felix/tools/maven/felix/plugin/FelixRunMojo.java Wed Aug 23 17:36:53 2006
@@ -46,6 +46,299 @@
  */
 public class FelixRunMojo extends AbstractMojo
 {
+    private static final String JRE_1_3_PACKAGES = 
+        "javax.accessibility;" +
+        "javax.accessibility.resources;" +
+        "javax.naming;" +
+        "javax.naming.directory;" +
+        "javax.naming.event;" +
+        "javax.naming.ldap;" +
+        "javax.naming.spi;" +
+        "javax.rmi;" +
+        "javax.rmi.CORBA;" +
+        "javax.sound.midi;" +
+        "javax.sound.midi.spi;" +
+        "javax.sound.sampled;" +
+        "javax.sound.sampled.spi;" +
+        "javax.swing;" +
+        "javax.swing.border;" +
+        "javax.swing.colorchooser;" +
+        "javax.swing.event;" +
+        "javax.swing.filechooser;" +
+        "javax.swing.plaf;" +
+        "javax.swing.plaf.basic;" +
+        "javax.swing.plaf.basic.resources;" +
+        "javax.swing.plaf.metal;" +
+        "javax.swing.plaf.metal.resources;" +
+        "javax.swing.plaf.multi;" +
+        "javax.swing.table;" +
+        "javax.swing.text;" +
+        "javax.swing.text.html;" +
+        "javax.swing.text.html.parser;" +
+        "javax.swing.text.rtf;" +
+        "javax.swing.tree;" +
+        "javax.swing.undo;" +
+        "javax.transaction;" +
+        "org.omg.CORBA;" +
+        "org.omg.CORBA_2_3;" +
+        "org.omg.CORBA_2_3.portable;" +
+        "org.omg.CORBA.DynAnyPackage;" +
+        "org.omg.CORBA.ORBPackage;" +
+        "org.omg.CORBA.portable;" +
+        "org.omg.CORBA.TypeCodePackage;" +
+        "org.omg.CosNaming;" +
+        "org.omg.CosNaming.NamingContextPackage;" +
+        "org.omg.SendingContext;" +
+        "org.omg.stub.java.rmi;version=\"1.3.0\"";
+
+    private static final String JRE_1_4_PACKAGES = 
+        "javax.accessibility;" +
+        "javax.imageio;" +
+        "javax.imageio.event;" +
+        "javax.imageio.metadata;" +
+        "javax.imageio.plugins.jpeg;" +
+        "javax.imageio.spi;" +
+        "javax.imageio.stream;" +
+        "javax.naming;" +
+        "javax.naming.directory;" +
+        "javax.naming.event;" +
+        "javax.naming.ldap;" +
+        "javax.naming.spi;" +
+        "javax.print;" +
+        "javax.print.attribute;" +
+        "javax.print.attribute.standard;" +
+        "javax.print.event;" +
+        "javax.rmi;" +
+        "javax.rmi.CORBA;" +
+        "javax.security.auth;" +
+        "javax.security.auth.callback;" +
+        "javax.security.auth.kerberos;" +
+        "javax.security.auth.login;" +
+        "javax.security.auth.spi;" +
+        "javax.security.auth.x500;" +
+        "javax.sound.midi;" +
+        "javax.sound.midi.spi;" +
+        "javax.sound.sampled;" +
+        "javax.sound.sampled.spi;" +
+        "javax.sql;" +
+        "javax.swing;" +
+        "javax.swing.border;" +
+        "javax.swing.colorchooser;" +
+        "javax.swing.event;" +
+        "javax.swing.filechooser;" +
+        "javax.swing.plaf;" +
+        "javax.swing.plaf.basic;" +
+        "javax.swing.plaf.metal;" +
+        "javax.swing.plaf.multi;" +
+        "javax.swing.table;" +
+        "javax.swing.text;" +
+        "javax.swing.text.html;" +
+        "javax.swing.text.html.parser;" +
+        "javax.swing.text.rtf;" +
+        "javax.swing.tree;" +
+        "javax.swing.undo;" +
+        "javax.transaction;" +
+        "javax.transaction.xa;" +
+        "javax.xml.parsers;" +
+        "javax.xml.transform;" +
+        "javax.xml.transform.dom;" +
+        "javax.xml.transform.sax;" +
+        "javax.xml.transform.stream;" +
+        "org.apache.crimson.jaxp;" +
+        "org.apache.crimson.parser;" +
+        "org.apache.crimson.parser.resources;" +
+        "org.apache.crimson.tree;" +
+        "org.apache.crimson.tree.resources;" +
+        "org.apache.crimson.util;" +
+        "org.apache.xalan;" +
+        "org.apache.xalan.client;" +
+        "org.apache.xalan.extensions;" +
+        "org.apache.xalan.lib;" +
+        "org.apache.xalan.lib.sql;" +
+        "org.apache.xalan.processor;" +
+        "org.apache.xalan.res;" +
+        "org.apache.xalan.serialize;" +
+        "org.apache.xalan.templates;" +
+        "org.apache.xalan.trace;" +
+        "org.apache.xalan.transformer;" +
+        "org.apache.xalan.xslt;" +
+        "org.apache.xml.dtm;" +
+        "org.apache.xml.dtm.ref;" +
+        "org.apache.xml.dtm.ref.dom2dtm;" +
+        "org.apache.xml.dtm.ref.sax2dtm;" +
+        "org.apache.xml.utils;" +
+        "org.apache.xml.utils.res;" +
+        "org.apache.xml.utils.synthetic;" +
+        "org.apache.xml.utils.synthetic.reflection;" +
+        "org.apache.xpath;" +
+        "org.apache.xpath.axes;" +
+        "org.apache.xpath.compiler;" +
+        "org.apache.xpath.functions;" +
+        "org.apache.xpath.objects;" +
+        "org.apache.xpath.operations;" +
+        "org.apache.xpath.patterns;" +
+        "org.apache.xpath.res;" +
+        "org.ietf.jgss;" +
+        "org.omg.CORBA;" +
+        "org.omg.CORBA_2_3;" +
+        "org.omg.CORBA_2_3.portable;" +
+        "org.omg.CORBA.DynAnyPackage;" +
+        "org.omg.CORBA.ORBPackage;" +
+        "org.omg.CORBA.portable;" +
+        "org.omg.CORBA.TypeCodePackage;" +
+        "org.omg.CosNaming;" +
+        "org.omg.CosNaming.NamingContextExtPackage;" +
+        "org.omg.CosNaming.NamingContextPackage;" +
+        "org.omg.Dynamic;" +
+        "org.omg.DynamicAny;" +
+        "org.omg.DynamicAny.DynAnyFactoryPackage;" +
+        "org.omg.DynamicAny.DynAnyPackage;" +
+        "org.omg.IOP;" +
+        "org.omg.IOP.CodecFactoryPackage;" +
+        "org.omg.IOP.CodecPackage;" +
+        "org.omg.Messaging;" +
+        "org.omg.PortableInterceptor;" +
+        "org.omg.PortableInterceptor.ORBInitInfoPackage;" +
+        "org.omg.PortableServer;" +
+        "org.omg.PortableServer.CurrentPackage;" +
+        "org.omg.PortableServer.POAManagerPackage;" +
+        "org.omg.PortableServer.POAPackage;" +
+        "org.omg.PortableServer.portable;" +
+        "org.omg.PortableServer.ServantLocatorPackage;" +
+        "org.omg.SendingContext;" +
+        "org.omg.stub.java.rmi;" +
+        "org.w3c.dom;" +
+        "org.w3c.dom.css;" +
+        "org.w3c.dom.events;" +
+        "org.w3c.dom.html;" +
+        "org.w3c.dom.stylesheets;" +
+        "org.w3c.dom.traversal;" +
+        "org.w3c.dom.views;" +
+        "org.xml.sax;" +
+        "org.xml.sax.ext;" +
+        "org.xml.sax.helpers;" +
+        "version=\"1.4.0\"";
+
+    private static final String JRE_1_5_PACKAGES = 
+        "javax.accessibility;" +
+        "javax.activity;" +
+        "javax.imageio;" +
+        "javax.imageio.event;" +
+        "javax.imageio.metadata;" +
+        "javax.imageio.plugins.bmp;" +
+        "javax.imageio.plugins.jpeg;" +
+        "javax.imageio.spi;" +
+        "javax.imageio.stream;" +
+        "javax.management;" +
+        "javax.management.loading;" +
+        "javax.management.modelmbean;" +
+        "javax.management.monitor;" +
+        "javax.management.openmbean;" +
+        "javax.management.relation;" +
+        "javax.management.remote;" +
+        "javax.management.remote.rmi;" +
+        "javax.management.timer;" +
+        "javax.naming;" +
+        "javax.naming.directory;" +
+        "javax.naming.event;" +
+        "javax.naming.ldap;" +
+        "javax.naming.spi;" +
+        "javax.print;" +
+        "javax.print.attribute;" +
+        "javax.print.attribute.standard;" +
+        "javax.print.event;" +
+        "javax.rmi;" +
+        "javax.rmi.CORBA;" +
+        "javax.rmi.ssl;" +
+        "javax.security.auth;" +
+        "javax.security.auth.callback;" +
+        "javax.security.auth.kerberos;" +
+        "javax.security.auth.login;" +
+        "javax.security.auth.spi;" +
+        "javax.security.auth.x500;" +
+        "javax.security.sasl;" +
+        "javax.sound.midi;" +
+        "javax.sound.midi.spi;" +
+        "javax.sound.sampled;" +
+        "javax.sound.sampled.spi;" +
+        "javax.sql;" +
+        "javax.sql.rowset;" +
+        "javax.sql.rowset.serial;" +
+        "javax.sql.rowset.spi;" +
+        "javax.swing;" +
+        "javax.swing.border;" +
+        "javax.swing.colorchooser;" +
+        "javax.swing.event;" +
+        "javax.swing.filechooser;" +
+        "javax.swing.plaf;" +
+        "javax.swing.plaf.basic;" +
+        "javax.swing.plaf.metal;" +
+        "javax.swing.plaf.multi;" +
+        "javax.swing.plaf.synth;" +
+        "javax.swing.table;" +
+        "javax.swing.text;" +
+        "javax.swing.text.html;" +
+        "javax.swing.text.html.parser;" +
+        "javax.swing.text.rtf;" +
+        "javax.swing.tree;" +
+        "javax.swing.undo;" +
+        "javax.transaction;" +
+        "javax.transaction.xa;" +
+        "javax.xml;" +
+        "javax.xml.datatype;" +
+        "javax.xml.namespace;" +
+        "javax.xml.parsers;" +
+        "javax.xml.transform;" +
+        "javax.xml.transform.dom;" +
+        "javax.xml.transform.sax;" +
+        "javax.xml.transform.stream;" +
+        "javax.xml.validation;" +
+        "javax.xml.xpath;" +
+        "org.ietf.jgss;" +
+        "org.omg.CORBA;" +
+        "org.omg.CORBA_2_3;" +
+        "org.omg.CORBA_2_3.portable;" +
+        "org.omg.CORBA.DynAnyPackage;" +
+        "org.omg.CORBA.ORBPackage;" +
+        "org.omg.CORBA.portable;" +
+        "org.omg.CORBA.TypeCodePackage;" +
+        "org.omg.CosNaming;" +
+        "org.omg.CosNaming.NamingContextExtPackage;" +
+        "org.omg.CosNaming.NamingContextPackage;" +
+        "org.omg.Dynamic;" +
+        "org.omg.DynamicAny;" +
+        "org.omg.DynamicAny.DynAnyFactoryPackage;" +
+        "org.omg.DynamicAny.DynAnyPackage;" +
+        "org.omg.IOP;" +
+        "org.omg.IOP.CodecFactoryPackage;" +
+        "org.omg.IOP.CodecPackage;" +
+        "org.omg.Messaging;" +
+        "org.omg.PortableInterceptor;" +
+        "org.omg.PortableInterceptor.ORBInitInfoPackage;" +
+        "org.omg.PortableServer;" +
+        "org.omg.PortableServer.CurrentPackage;" +
+        "org.omg.PortableServer.POAManagerPackage;" +
+        "org.omg.PortableServer.POAPackage;" +
+        "org.omg.PortableServer.portable;" +
+        "org.omg.PortableServer.ServantLocatorPackage;" +
+        "org.omg.SendingContext;" +
+        "org.omg.stub.java.rmi;" +
+        "org.omg.stub.javax.management.remote.rmi;" +
+        "org.w3c.dom;" +
+        "org.w3c.dom.bootstrap;" +
+        "org.w3c.dom.css;" +
+        "org.w3c.dom.events;" +
+        "org.w3c.dom.html;" +
+        "org.w3c.dom.ls;" +
+        "org.w3c.dom.ranges;" +
+        "org.w3c.dom.stylesheets;" +
+        "org.w3c.dom.traversal;" +
+        "org.w3c.dom.views;" +
+        "org.xml.sax;" +
+        "org.xml.sax.ext;" +
+        "org.xml.sax.helpers;" +
+        "version=\"1.5.0\"";
+
     /**
      * The name of the felix cache profile.
      * 
@@ -113,12 +406,32 @@
         props.put( "felix.cache.dir", felixCacheDir.getAbsolutePath() );
         props.put( "felix.cache.profile", felixCacheProfile );
         props.put( "felix.embedded.execution", "true" );
-        props.put( "org.osgi.framework.system.packages", 
-            "org.osgi.framework; version=1.3.0, " +
-            "org.osgi.service.packageadmin; version=1.2.0, " +
-            "org.osgi.service.startlevel; version=1.0.0, " +
-            "org.osgi.service.url; version=1.0.0, " +
-            "${jre-${java.specification.version}}" );
+        
+        StringBuffer buf = new StringBuffer();
+        buf.append( "org.osgi.framework; version=1.3.0, " );
+        buf.append( "org.osgi.service.packageadmin; version=1.2.0, " );
+        buf.append( "org.osgi.service.startlevel; version=1.0.0, " );
+        buf.append( "org.osgi.service.url; version=1.0.0, " );
+
+        String version = System.getProperty( "java.version" );
+        if ( version.indexOf( "1.3" ) != -1 )
+        {
+            buf.append( JRE_1_3_PACKAGES );
+        }
+        else if ( version.indexOf( "1.4" ) != -1  ) 
+        {
+            buf.append( JRE_1_4_PACKAGES );
+        }
+        else if ( version.indexOf( "1.5" ) != -1  )
+        {
+            buf.append( JRE_1_5_PACKAGES );
+        }
+        else
+        {
+            throw new IllegalStateException( "java.version = " + version + " is not recognized" );
+        }
+        
+        props.put( "org.osgi.framework.system.packages", buf.toString() );
         try
         {
             props.put( "felix.auto.start.1", getAutoStart() );