Using 3.5.1, I had to add the following to your list to get it to work:
org.eclipse.ecf.provider.filetransfer
org.eclipse.ecf.provider.filetransfer.httpclient
org.apache.commons.httpclient
org.apache.commons.logging
org.apache.commons.codec

This list will change in 3.6.  For reference you can look at the 
org.eclipse.releng.basebuilder project in cvs 
(dev.eclipse.org/cvsroot/eclipse).  This is the set of bundles used to run 
the releng builds.  It is good to check out this project based on a tag.

-Andrew


From:
Walter Treur <[email protected]>
To:
Equinox development mailing list <[email protected]>
Date:
01/20/2010 08:27 AM
Subject:
Re: [equinox-dev] Equinox nightly in testing framework
Sent by:
[email protected]



Note: I used the following buildfile:

<project name="get-equinox" default="get-eclipse">
        <target name="get-equinox">
                <p2.mirror source="
http://download.eclipse.org/eclipse/updates/3.6-N-builds"; 
destination="file:/tmp/equinx-latest">
                        <iu id="org.eclipse.osgi" />
                </p2.mirror>
        </target>
</project>

On Wed, Jan 20, 2010 at 14:21, Walter Treur <[email protected]> wrote:
Hello all,

I succesfully used the p2.mirror ant task from console with the following 
command:

$ java -jar org.eclipse.equinox.launcher.jar -console -consoleLog 
-application org.eclipse.ant.core.antRunner -buildfile build.xml 
get-equinox

Since I want to execute this task from another ant task running on our 
build-server I have to embed Eclipse in my project. I figured I should be 
able to strip it down so it won't has more jars than absolutely necessary 
to run antRunner. The normal Eclipse installation is around 100mb-200mb 
and to large to put in my project trunk.
With some digging through the manifest files of the jars in the plugin/ 
dir I successfully came down with the following list of osgi bundles to 
run inside Equinox.

org.eclipse.equinox.common.jar
org.eclipse.core.jobs.jar
org.eclipse.equinox.registry.jar
org.eclipse.equinox.preferences.jar
org.eclipse.core.contenttype.jar
org.eclipse.equinox.app.jar
org.eclipse.core.runtime.jar
org.eclipse.core.variables.jar
org.eclipse.osgi.services.jar
org.eclipse.ecf.identity.jar
org.eclipse.ecf.jar
org.eclipse.ecf.filetransfer.jar
org.eclipse.equinox.p2.core.jar
org.eclipse.equinox.p2.jarprocessor.jar
org.eclipse.equinox.p2.metadata.jar
org.eclipse.equinox.security.jar
org.eclipse.equinox.p2.repository.jar
org.eclipse.equinox.p2.artifact.repository.jar
org.sat4j.core.jar
org.sat4j.pb.jar
org.eclipse.equinox.simpleconfigurator.jar
org.eclipse.equinox.p2.metadata.repository.jar
org.eclipse.equinox.p2.engine.jar
org.eclipse.equinox.p2.director.jar
org.eclipse.equinox.p2.garbagecollector.jar
org.eclipse.equinox.p2.exemplarysetup.jar
org.eclipse.equinox.p2.repository.tools.jar
org.apache.ant.jar
org.eclipse.ant.core.jar

With these bundles I was able to run the antRunner task from the 
commandline, but I retrieved the the error:

org.eclipse.equinox.internal.provisional.p2.core.ProvisionException: No 
repository found at 
http://download.eclipse.org/eclipse/updates/3.6-N-builds.

I guess it has something to do with a wrong/missing OSGi service, because 
accessing this repository worked with the full Eclipse installation and 
with the stripped setup all the bundles are successfully resolved 
according to Equinox.

Does anyone know what the specific dependencies are to run a standalone 
antRunner without a full Eclipse installation?

I used the following configration to launch equinox:
--------------------------------------------------------------------------------------------------------------------------------------
osgi.framework=file\:org.eclipse.osgi.jar

osgi.bundles=reference\:file\:org.eclipse.equinox.common....@4,reference\:file\:org.eclipse.core.jobs....@4,reference\:file\:org.eclipse.equinox.registry....@4,reference\:file\:org.eclipse.equinox.preferences....@4,reference\:file\:org.eclipse.core.contenttype....@4,reference\:file\:org.eclipse.equinox.app....@4,reference\:file\:org.eclipse.core.runtime....@4\:start,reference\:file\:org.eclipse.core.variables....@4,reference\:file\:org.eclipse.osgi.services....@4,reference\:file\:org.eclipse.ecf.identity....@4,reference\:file\:org.eclipse.ecf....@4,reference\:file\:org.eclipse.ecf.filetransfer....@4,reference\:file\:org.eclipse.equinox.p2.core....@4,reference\:file\:org.eclipse.equinox.p2.jarprocessor....@4,reference\:file\:org.eclipse.equinox.p2.metadata....@4,reference\:file\:org.eclipse.equinox.security....@4,reference\:file\:org.eclipse.equinox.p2.repository....@4,reference\:file\:org.eclipse.equinox.p2.artifact.repository....@4,reference\:file\:org.sat4j.core....@4,refe!
 
rence\:file\:org.sat4j.pb....@4,reference\:file\:org.eclipse.equinox.simpleconfigurator....@4,reference\:file\:org.eclipse.equinox.p2.metadata.repository....@4,reference\:file\:org.eclipse.equinox.p2.engine....@4,reference\:file\:org.eclipse.equinox.p2.director....@4,reference\:file\:org.eclipse.equinox.p2.garbagecollector....@4,reference\:file\:org.eclipse.equinox.p2.exemplarysetup....@4,reference\:file\:org.eclipse.equinox.p2.repository.tools.jar,reference\:file\:org.apache.ant....@4,reference\:file\:org.eclipse.ant.core....@4

osgi.bundles.defaultStartLevel=4

osgi.noShutdown=true

eclipse.buildId=M20090917-0800
[email protected]/../p2/
eclipse.p2.profile=epp.package.java
--------------------------------------------------------------------------------------------------------------------------------------


The complete stacktrace of the ProvisionException is:
--------------------------------------------------------------------------------------------------------------------------------------
BUILD FAILED
org.eclipse.equinox.internal.provisional.p2.core.ProvisionException: No 
repository found at 
http://download.eclipse.org/eclipse/updates/3.6-N-builds.
    at 
org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.fail(AbstractRepositoryManager.java:380)
    at 
org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:641)
    at 
org.eclipse.equinox.internal.p2.artifact.repository.ArtifactRepositoryManager.loadRepository(ArtifactRepositoryManager.java:93)
    at 
org.eclipse.equinox.p2.internal.repository.tools.AbstractApplication.addRepository(AbstractApplication.java:96)
    at 
org.eclipse.equinox.p2.internal.repository.tools.AbstractApplication.initializeRepos(AbstractApplication.java:67)
    at 
org.eclipse.equinox.p2.internal.repository.tools.tasks.MirrorTask.execute(MirrorTask.java:53)
    at 
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at 
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
    at org.apache.tools.ant.Task.perform(Task.java:348)
    at org.apache.tools.ant.Target.execute(Target.java:357)
    at org.apache.tools.ant.Target.performTasks(Target.java:385)
    at 
org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)
    at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
    at 
org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
    at 
org.eclipse.ant.internal.core.ant.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
    at org.apache.tools.ant.Project.executeTargets(Project.java:1189)
    at 
org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:622)
    at 
org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:494)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.eclipse.ant.core.AntRunner.run(AntRunner.java:513)
    at org.eclipse.ant.core.AntRunner.start(AntRunner.java:600)
    at 
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
    at 
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at 
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at 
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
    at 
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1287)
--------------------------------------------------------------------------------------------------------------------------------------

Regards,
Walter







On Wed, Dec 16, 2009 at 17:43, Andrew Niefer <[email protected]> wrote:

When running under Eclipse with the org.eclipse.ant.core.antRunner 
application, there are two possibilities here. 

The first is to use p2.  There is a p2 repository "
http://download.eclipse.org/eclipse/updates/3.6-N-builds"; which contains 
the results of the nightly builds. 
You can get the osgi bundle from there using a p2 mirror task. (
http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/p2_repositorytasks.htm
). 
This would look something like : 
        <p2.mirror source="
http://download.eclipse.org/eclipse/updates/3.6-N-builds"; destination="
file:${basedir}/osgi"> 
                <iu id="org.eclipse.osgi" /> 
        </p2.mirror> 

- This will create a p2 repository at ${basedir}/osgi, and the osgi jar 
will be at ${basedir}/osgi/plugins/org.eclipse.osgi_<version>.jar.  The 
version here will still contain a timestamp like N20091215-2000 
- In general, this also gets all the dependencies of the listed 
installable units, org.eclipse.osgi doesn't have any. 
- 3.6-N-builds is actually a composite of several builds, this will just 
get the highest version of osgi. 


The other option, is to get the source from CVS, the build.xml script can 
be generated using pde.build.  This can get complicated in general, but 
for osgi it isn't too bad (because there are no dependencies): 
                <eclipse.buildScript 
                                elements="[email protected]" 
                                buildDirectory="${basedir}" 
                                pluginPath=
"${basedir}/../org.eclipse.osgi" 
                                forceContextQualifier="N123" 
                        /> 
- forceContextQualifier will be the built version qualifier 
- pluginPath will be the location of the osgi bundle on disk 
- buildDirectory just needs to be set, it isn't really used here, but in 
general other scripts will be generated there 
- the osgi build.xml will require a property "CDC-1.1/Foundation-1.1" 
specifying the bootclasspath for foundation. 


Both of these options need to run under Eclipse because of the 
dependencies on p2 and/or pde.build.  If you are running the script using 
an external tools configuration, be sure to select "Run in the same JRE as 
the workspace" on the JRE tab. 


-Andrew 

From: 
Walter Treur <[email protected]> 
To: 
[email protected] 
Date: 
12/15/2009 05:44 AM 
Subject: 
[equinox-dev] Equinox nightly in testing framework 
Sent by: 
[email protected]





Hello all,

I'm working on a OSGi testing framework, testing the OSGi
specification conformance for the most popular OSGi core framework
implementations. (equinox, knopferfish, felix)
Public testresults are already available for the most recent popular
core frameworks at
http://opensource.luminis.net/svn/OSGITESTRESULTS/trunk/index.html.

At this moment, I have an own nightly build script to test the latest
(nightly) framework builds from the svn/cvs trunk. It uses ant to
download, build and test the latest trunk version for knopflerfish and
felix and post these results online. However, I'm unable to require or
build the latest nightly equinox version.

The url's to the latest snapshot on the equinox download page contains
a version number and time and it isn't therefore possible to point to
in my ant script since it varies every time. A form post about this
issue wasn't helpful either:
http://www.eclipse.org/forums/index.php?t=msg&goto=501643&S=1c814a9fba21ff6dcb1d7e7e1890a7f8#msg_501643


I decided to try to build the latest equinox version from the trunk
and this is were I ran into a problem. I did a checkout of the module
"org.eclipse.equinox/framework/bundles/org.eclipse.osgi" from
"dev.eclipse.org" Inside eclipse I could create an ant buildfile with
PDE Tools -> Create Ant Build File from the contextmenu on the
build.properties file. Running the generated ant script worked fine
and the build was successful.

My question is: Is it possible to generate this ant-build file from a
console or at least without the eclipse UI so I can include it in the
framework's ant script. Of course, if you have another option to
automatically retrieve or build the latest equinox nightly I would be
very pleased to hear.

Regards,
Walter Treur
_______________________________________________
equinox-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/equinox-dev



_______________________________________________
equinox-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/equinox-dev


_______________________________________________
equinox-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/equinox-dev


_______________________________________________
equinox-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/equinox-dev

Reply via email to