Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Buckminster » eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins
eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1046297] Sun, 21 April 2013 14:13 Go to next message
Sakis Kotisis is currently offline Sakis Kotisis
Messages: 31
Registered: July 2009
Member
Hello,

I've encountered some strange behavior with Buckminster 4.2 on Jenkins.

Buckminster is provisioned from
http://download.eclipse.org/tools/buckminster/headless-4.2/, with below
features.

Features:
org.eclipse.buckminster.core.headless.feature (%featureName)
org.eclipse.buckminster.pde.headless.feature (%featureName)
org.eclipse.buckminster.subversive.headless.feature (%featureName)
org.eclipse.buckminster.subversive.svnkit16.headless.feature
(%featureName)

The site.p2 action completes ok and without errors.

However, no class files are generated from eclipse.build!

init actor: eclipse.build[g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
INFO: [start g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
buckminster.component=g.o.p.c
workspace.root=/var/lib/jenkins/workspace/PG
buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
localhost=scm
generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
buckminster.component.type=osgi.bundle
buckminster.version=1.2.0
target.nl=en_US
eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
INFO: [end g.o.p.c:osgi.bundle$1.2.0#eclipse.build]

Naturally, the bundle jar does not contain any class files either.

init actor: copyTargetFragments[g.o.p.c:osgi.bundle$1.2.0#target.fragments]
Action g.o.p.c:osgi.bundle$1.2.0#target.fragments using 'up to date'
policy ACTOR: Product is up to date
Action g.o.p.c:osgi.bundle$1.2.0#bundle.jar using 'up to date' policy
COUNT: Rebuild needed: File count(0) < expected(1)
init actor: ant[g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
buildFileId=buckminster.pdetasks
targets=create.bundle.jar
INFO: [start g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
Product alias = action.output
Product base = ${buckminster.output}/jar/
buckminster.component=g.o.p.c
workspace.root=/var/lib/jenkins/workspace/PG
buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
localhost=scm
generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
buckminster.component.type=osgi.bundle
buckminster.version=1.2.0
target.nl=en_US
eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
Base: /var/lib/jenkins/workspace/PG/g.o.p.c/bin: No such file or directory
INFO: [end g.o.p.c:osgi.bundle$1.2.0#bundle.jar]

Could this be a bug or am i missing something?



--
Sakis Kotisis

Senior Software Engineer
SciGen Technologies, S.A.
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1046358 is a reply to message #1046297] Sun, 21 April 2013 16:21 Go to previous messageGo to next message
Thomas Hallgren is currently offline Thomas Hallgren
Messages: 3215
Registered: July 2009
Senior Member
I'd recommend that you create a new workspace from scatch in your IDE
and see if the problem is visible there. Buckminster has no builder of
it's own. It just calls on Eclipse to do the build, the same way your
IDE does.

- thomas

On 2013-04-21 20:13, Sakis Kotisis wrote:
> Hello,
>
> I've encountered some strange behavior with Buckminster 4.2 on Jenkins.
>
> Buckminster is provisioned from
> http://download.eclipse.org/tools/buckminster/headless-4.2/, with below
> features.
>
> Features:
> org.eclipse.buckminster.core.headless.feature (%featureName)
> org.eclipse.buckminster.pde.headless.feature (%featureName)
> org.eclipse.buckminster.subversive.headless.feature (%featureName)
> org.eclipse.buckminster.subversive.svnkit16.headless.feature
> (%featureName)
>
> The site.p2 action completes ok and without errors.
>
> However, no class files are generated from eclipse.build!
>
> init actor: eclipse.build[g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
> INFO: [start g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
> buckminster.component=g.o.p.c
> workspace.root=/var/lib/jenkins/workspace/PG
>
> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
>
> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
>
> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
>
> localhost=scm
> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
> buckminster.component.type=osgi.bundle
> buckminster.version=1.2.0
> target.nl=en_US
>
> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
>
> INFO: [end g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>
> Naturally, the bundle jar does not contain any class files either.
>
> init actor: copyTargetFragments[g.o.p.c:osgi.bundle$1.2.0#target.fragments]
> Action g.o.p.c:osgi.bundle$1.2.0#target.fragments using 'up to date'
> policy ACTOR: Product is up to date
> Action g.o.p.c:osgi.bundle$1.2.0#bundle.jar using 'up to date' policy
> COUNT: Rebuild needed: File count(0) < expected(1)
> init actor: ant[g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
> buildFileId=buckminster.pdetasks
> targets=create.bundle.jar
> INFO: [start g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
> Product alias = action.output
> Product base = ${buckminster.output}/jar/
> buckminster.component=g.o.p.c
> workspace.root=/var/lib/jenkins/workspace/PG
>
> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
>
> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
>
> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
>
> localhost=scm
> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
> buckminster.component.type=osgi.bundle
> buckminster.version=1.2.0
> target.nl=en_US
>
> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
>
> Base: /var/lib/jenkins/workspace/PG/g.o.p.c/bin: No such file or directory
> INFO: [end g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>
> Could this be a bug or am i missing something?
>
>
>
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1047010 is a reply to message #1046358] Mon, 22 April 2013 13:10 Go to previous messageGo to next message
Sakis Kotisis is currently offline Sakis Kotisis
Messages: 31
Registered: July 2009
Member
Hello Thomas,

Following your recommendation, I tried the following both with Eclipse 3.8
and 4.2:

1) Checkout into new workspace from SVN through Subversive
2) Open target definition file and set as target platform
3) Buckminster > Invoke Action ... > site.p2

The p2 site is generated with the jars including the class files.

And then with headless Buckminster 4.2 on same system:

1) Checkout into new workspace from SVN through TortoiseSVN
2) Run the following script

importtargetdefinition -A 'F:/_Workspaces/bucky-pg/c.s.p.s/mirror.target'
import 'C:/Users/tkotisis/workspace/c.s.p.s/site.cquery'
build -c
perform -D target.os=win32 -D target.ws=win32 -D target.arch=* -D
cbi.include.source=false com.scigentech.postergenius.site#site.p2


The p2 site is generated with the class files MISSING from jars.


Below is an example of actions for a specific bundle:

!ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.224
!MESSAGE init actor: eclipse.build[g.o.p.c:osgi.bundle$1.2.0#eclipse.build]

!ENTRY org.eclipse.buckminster.core 1 293 2013-04-22 19:46:04.226
!MESSAGE [start g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
buckminster.component=g.o.p.c
workspace.root=C:/Users/tkotisis/workspace
buckminster.temp=F:/TMP/bucky-pg/buildtmp/g.o.p.c_1.2.0-osgi.bundle/temp
buckminster.home=C:\Users\tkotisis\workspace\g.o.p.c\
buckminster.output=F:/TMP/bucky-pg/out/g.o.p.c_1.2.0-osgi.bundle
localhost=pavlos-PC
generator.buildTimestamp.format=2013-04-22T16:46:03.489+0000
buckminster.component.type=osgi.bundle
buckminster.version=1.2.0
target.nl=el_GR
eclipse.home=F:\TMP\buckminster4.2

!ENTRY org.eclipse.buckminster.core 1 293 2013-04-22 19:46:04.229
!MESSAGE [end g.o.p.c:osgi.bundle$1.2.0#eclipse.build]

!ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.232
!MESSAGE init actor:
copyTargetFragments[g.o.p.c:osgi.bundle$1.2.0#target.fragments]

!ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.234
!MESSAGE Action g.o.p.c:osgi.bundle$1.2.0#target.fragments using 'up to
date' policy ACTOR: Product is up to date

!ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.237
!MESSAGE Action g.o.p.c:osgi.bundle$1.2.0#bundle.jar using 'up to date'
policy COUNT: Rebuild needed: File count(0) < expected(1)

!ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.239
!MESSAGE init actor: ant[g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
buildFileId=buckminster.pdetasks
targets=create.bundle.jar

!ENTRY org.eclipse.buckminster.core 1 293 2013-04-22 19:46:04.242
!MESSAGE [start g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
Product alias = action.output
Product base = ${buckminster.output}\jar\
buckminster.component=g.o.p.c
workspace.root=C:/Users/tkotisis/workspace
buckminster.temp=F:/TMP/bucky-pg/buildtmp/g.o.p.c_1.2.0-osgi.bundle/temp
buckminster.home=C:\Users\tkotisis\workspace\g.o.p.c\
buckminster.output=F:/TMP/bucky-pg/out/g.o.p.c_1.2.0-osgi.bundle
localhost=pavlos-PC
generator.buildTimestamp.format=2013-04-22T16:46:03.489+0000
buckminster.component.type=osgi.bundle
buckminster.version=1.2.0
target.nl=el_GR
eclipse.home=F:\TMP\buckminster4.2

!ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.245
!MESSAGE Base: C:\Users\tkotisis\workspace\g.o.p.c\bin: No such file or
directory

!ENTRY org.eclipse.buckminster.core 1 293 2013-04-22 19:46:04.344
!MESSAGE [end g.o.p.c:osgi.bundle$1.2.0#bundle.jar]



Of course, in case the IDE is used, the bundle projects are built on
checkout and on setting the target definition as well.
Hence, the directory \bin already exists and contains the class files
before Buckminster is called.

Is there anything else i could try to troubleshoot?

Thanks,
Sakis



On Sun, 21 Apr 2013 23:21:31 +0300, Thomas Hallgren <thomas@xxxxxxxx> wrote:

> I'd recommend that you create a new workspace from scatch in your IDE
> and see if the problem is visible there. Buckminster has no builder of
> it's own. It just calls on Eclipse to do the build, the same way your
> IDE does.
>
> - thomas
>
> On 2013-04-21 20:13, Sakis Kotisis wrote:
>> Hello,
>>
>> I've encountered some strange behavior with Buckminster 4.2 on Jenkins.
>>
>> Buckminster is provisioned from
>> http://download.eclipse.org/tools/buckminster/headless-4.2/, with below
>> features.
>>
>> Features:
>> org.eclipse.buckminster.core.headless.feature (%featureName)
>> org.eclipse.buckminster.pde.headless.feature (%featureName)
>> org.eclipse.buckminster.subversive.headless.feature (%featureName)
>> org.eclipse.buckminster.subversive.svnkit16.headless.feature
>> (%featureName)
>>
>> The site.p2 action completes ok and without errors.
>>
>> However, no class files are generated from eclipse.build!
>>
>> init actor: eclipse.build[g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>> INFO: [start g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>> buckminster.component=g.o.p.c
>> workspace.root=/var/lib/jenkins/workspace/PG
>>
>> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
>>
>> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
>>
>> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
>>
>> localhost=scm
>> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
>> buckminster.component.type=osgi.bundle
>> buckminster.version=1.2.0
>> target.nl=en_US
>>
>> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
>>
>> INFO: [end g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>
>> Naturally, the bundle jar does not contain any class files either.
>>
>> init actor:
>> copyTargetFragments[g.o.p.c:osgi.bundle$1.2.0#target.fragments]
>> Action g.o.p.c:osgi.bundle$1.2.0#target.fragments using 'up to date'
>> policy ACTOR: Product is up to date
>> Action g.o.p.c:osgi.bundle$1.2.0#bundle.jar using 'up to date' policy
>> COUNT: Rebuild needed: File count(0) < expected(1)
>> init actor: ant[g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>> buildFileId=buckminster.pdetasks
>> targets=create.bundle.jar
>> INFO: [start g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>> Product alias = action.output
>> Product base = ${buckminster.output}/jar/
>> buckminster.component=g.o.p.c
>> workspace.root=/var/lib/jenkins/workspace/PG
>>
>> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
>>
>> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
>>
>> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
>>
>> localhost=scm
>> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
>> buckminster.component.type=osgi.bundle
>> buckminster.version=1.2.0
>> target.nl=en_US
>>
>> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
>>
>> Base: /var/lib/jenkins/workspace/PG/g.o.p.c/bin: No such file or
>> directory
>> INFO: [end g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>>
>> Could this be a bug or am i missing something?
>>
>>
>>
>


--
Sakis Kotisis

Senior Software Engineer
SciGen Technologies, S.A.
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1047101 is a reply to message #1047010] Mon, 22 April 2013 15:49 Go to previous messageGo to next message
Thomas Hallgren is currently offline Thomas Hallgren
Messages: 3215
Registered: July 2009
Senior Member
Don't see how you can make it work using win32.win32.*

Does it produce class files if you use win32.win32.x86 ?

- thomas

On 2013-04-22 19:10, Sakis Kotisis wrote:
> Hello Thomas,
>
> Following your recommendation, I tried the following both with Eclipse
> 3.8 and 4.2:
>
> 1) Checkout into new workspace from SVN through Subversive
> 2) Open target definition file and set as target platform
> 3) Buckminster > Invoke Action ... > site.p2
>
> The p2 site is generated with the jars including the class files.
>
> And then with headless Buckminster 4.2 on same system:
>
> 1) Checkout into new workspace from SVN through TortoiseSVN
> 2) Run the following script
>
> importtargetdefinition -A 'F:/_Workspaces/bucky-pg/c.s.p.s/mirror.target'
> import 'C:/Users/tkotisis/workspace/c.s.p.s/site.cquery'
> build -c
> perform -D target.os=win32 -D target.ws=win32 -D target.arch=* -D
> cbi.include.source=false com.scigentech.postergenius.site#site.p2
>
>
> The p2 site is generated with the class files MISSING from jars.
>
>
> Below is an example of actions for a specific bundle:
>
> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.224
> !MESSAGE init actor: eclipse.build[g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>
> !ENTRY org.eclipse.buckminster.core 1 293 2013-04-22 19:46:04.226
> !MESSAGE [start g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
> buckminster.component=g.o.p.c
> workspace.root=C:/Users/tkotisis/workspace
> buckminster.temp=F:/TMP/bucky-pg/buildtmp/g.o.p.c_1.2.0-osgi.bundle/temp
> buckminster.home=C:\Users\tkotisis\workspace\g.o.p.c\
> buckminster.output=F:/TMP/bucky-pg/out/g.o.p.c_1.2.0-osgi.bundle
> localhost=pavlos-PC
> generator.buildTimestamp.format=2013-04-22T16:46:03.489+0000
> buckminster.component.type=osgi.bundle
> buckminster.version=1.2.0
> target.nl=el_GR
> eclipse.home=F:\TMP\buckminster4.2
>
> !ENTRY org.eclipse.buckminster.core 1 293 2013-04-22 19:46:04.229
> !MESSAGE [end g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>
> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.232
> !MESSAGE init actor:
> copyTargetFragments[g.o.p.c:osgi.bundle$1.2.0#target.fragments]
>
> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.234
> !MESSAGE Action g.o.p.c:osgi.bundle$1.2.0#target.fragments using 'up to
> date' policy ACTOR: Product is up to date
>
> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.237
> !MESSAGE Action g.o.p.c:osgi.bundle$1.2.0#bundle.jar using 'up to date'
> policy COUNT: Rebuild needed: File count(0) < expected(1)
>
> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.239
> !MESSAGE init actor: ant[g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
> buildFileId=buckminster.pdetasks
> targets=create.bundle.jar
>
> !ENTRY org.eclipse.buckminster.core 1 293 2013-04-22 19:46:04.242
> !MESSAGE [start g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
> Product alias = action.output
> Product base = ${buckminster.output}\jar\
> buckminster.component=g.o.p.c
> workspace.root=C:/Users/tkotisis/workspace
> buckminster.temp=F:/TMP/bucky-pg/buildtmp/g.o.p.c_1.2.0-osgi.bundle/temp
> buckminster.home=C:\Users\tkotisis\workspace\g.o.p.c\
> buckminster.output=F:/TMP/bucky-pg/out/g.o.p.c_1.2.0-osgi.bundle
> localhost=pavlos-PC
> generator.buildTimestamp.format=2013-04-22T16:46:03.489+0000
> buckminster.component.type=osgi.bundle
> buckminster.version=1.2.0
> target.nl=el_GR
> eclipse.home=F:\TMP\buckminster4.2
>
> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.245
> !MESSAGE Base: C:\Users\tkotisis\workspace\g.o.p.c\bin: No such file or
> directory
>
> !ENTRY org.eclipse.buckminster.core 1 293 2013-04-22 19:46:04.344
> !MESSAGE [end g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>
>
>
> Of course, in case the IDE is used, the bundle projects are built on
> checkout and on setting the target definition as well.
> Hence, the directory \bin already exists and contains the class files
> before Buckminster is called.
>
> Is there anything else i could try to troubleshoot?
>
> Thanks,
> Sakis
>
>
>
> On Sun, 21 Apr 2013 23:21:31 +0300, Thomas Hallgren <thomas@xxxxxxxx> wrote:
>
>> I'd recommend that you create a new workspace from scatch in your IDE
>> and see if the problem is visible there. Buckminster has no builder of
>> it's own. It just calls on Eclipse to do the build, the same way your
>> IDE does.
>>
>> - thomas
>>
>> On 2013-04-21 20:13, Sakis Kotisis wrote:
>>> Hello,
>>>
>>> I've encountered some strange behavior with Buckminster 4.2 on Jenkins.
>>>
>>> Buckminster is provisioned from
>>> http://download.eclipse.org/tools/buckminster/headless-4.2/, with below
>>> features.
>>>
>>> Features:
>>> org.eclipse.buckminster.core.headless.feature (%featureName)
>>> org.eclipse.buckminster.pde.headless.feature (%featureName)
>>> org.eclipse.buckminster.subversive.headless.feature (%featureName)
>>> org.eclipse.buckminster.subversive.svnkit16.headless.feature
>>> (%featureName)
>>>
>>> The site.p2 action completes ok and without errors.
>>>
>>> However, no class files are generated from eclipse.build!
>>>
>>> init actor: eclipse.build[g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>> INFO: [start g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>> buckminster.component=g.o.p.c
>>> workspace.root=/var/lib/jenkins/workspace/PG
>>>
>>> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
>>>
>>>
>>> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
>>>
>>> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
>>>
>>>
>>> localhost=scm
>>> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
>>> buckminster.component.type=osgi.bundle
>>> buckminster.version=1.2.0
>>> target.nl=en_US
>>>
>>> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
>>>
>>>
>>> INFO: [end g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>>
>>> Naturally, the bundle jar does not contain any class files either.
>>>
>>> init actor:
>>> copyTargetFragments[g.o.p.c:osgi.bundle$1.2.0#target.fragments]
>>> Action g.o.p.c:osgi.bundle$1.2.0#target.fragments using 'up to date'
>>> policy ACTOR: Product is up to date
>>> Action g.o.p.c:osgi.bundle$1.2.0#bundle.jar using 'up to date' policy
>>> COUNT: Rebuild needed: File count(0) < expected(1)
>>> init actor: ant[g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>>> buildFileId=buckminster.pdetasks
>>> targets=create.bundle.jar
>>> INFO: [start g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>>> Product alias = action.output
>>> Product base = ${buckminster.output}/jar/
>>> buckminster.component=g.o.p.c
>>> workspace.root=/var/lib/jenkins/workspace/PG
>>>
>>> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
>>>
>>>
>>> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
>>>
>>> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
>>>
>>>
>>> localhost=scm
>>> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
>>> buckminster.component.type=osgi.bundle
>>> buckminster.version=1.2.0
>>> target.nl=en_US
>>>
>>> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
>>>
>>>
>>> Base: /var/lib/jenkins/workspace/PG/g.o.p.c/bin: No such file or
>>> directory
>>> INFO: [end g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>>>
>>> Could this be a bug or am i missing something?
>>>
>>>
>>>
>>
>
>
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1047492 is a reply to message #1047101] Tue, 23 April 2013 05:25 Go to previous messageGo to next message
Sakis Kotisis is currently offline Sakis Kotisis
Messages: 31
Registered: July 2009
Member
It doesn't.

It does from the IDE irrespective of the target flags.

The only difference i can discern in the logs when building from the IDE
(as opposed to building from headless), is that the flags appear for each
action.

For example, the log snippet corresponding to the same bundle when
building from the IDE is:

init actor: eclipse.build[g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
[start g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
target.arch=*
buckminster.component=g.o.p.c
workspace.root=F:/_Workspaces/bucky-pg
buckminster.temp=F:/TMP/bucky-pg/buildtmp/g.o.p.c_1.2.0-osgi.bundle/temp
buckminster.home=F:\_Workspaces\bucky-pg\g.o.p.c\
buckminster.output=F:/TMP/bucky-pg/out/g.o.p.c_1.2.0-osgi.bundle
buckminster.temp.root=F:/TMP/bucky-pg/buildtmp
localhost=pavlos-PC
cbi.include.source=false
generator.buildTimestamp.format=2013-04-23T08:34:12.813+0000
buckminster.component.type=osgi.bundle
buckminster.version=1.2.0
target.nl=el_GR
target.ws=win32
eclipse.home=C:\Eclipse\rcp-3.8-x86_64
buckminster.output.root=F:/TMP/bucky-pg/out
target.os=win32
[end g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
init actor: copyTargetFragments[g.o.p.c:osgi.bundle$1.2.0#target.fragments]
Action g.o.p.c:osgi.bundle$1.2.0#target.fragments using 'up to date'
policy ACTOR: Product is up to date
Action g.o.p.c:osgi.bundle$1.2.0#bundle.jar using 'up to date' policy
COUNT: Rebuild needed: File count(0) < expected(1)
init actor: ant[g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
buildFileId=buckminster.pdetasks
targets=create.bundle.jar
[start g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
Product alias = action.output
Product base = ${buckminster.output}\jar\
target.arch=*
buckminster.component=g.o.p.c
workspace.root=F:/_Workspaces/bucky-pg
buckminster.temp=F:/TMP/bucky-pg/buildtmp/g.o.p.c_1.2.0-osgi.bundle/temp
buckminster.home=F:\_Workspaces\bucky-pg\g.o.p.c\
buckminster.output=F:/TMP/bucky-pg/out/g.o.p.c_1.2.0-osgi.bundle
buckminster.temp.root=F:/TMP/bucky-pg/buildtmp
localhost=pavlos-PC
cbi.include.source=false
generator.buildTimestamp.format=2013-04-23T08:34:12.813+0000
buckminster.component.type=osgi.bundle
buckminster.version=1.2.0
target.nl=el_GR
target.ws=win32
eclipse.home=C:\Eclipse\rcp-3.8-x86_64
buckminster.output.root=F:/TMP/bucky-pg/out
target.os=win32
[end g.o.p.c:osgi.bundle$1.2.0#bundle.jar]

This might be, because the flags are specified in a .properties file.
It probably doesn't make a difference, but i can't think of anything else.

Any other suggestions?

Thanks,
Sakis

On Mon, 22 Apr 2013 22:49:29 +0300, Thomas Hallgren <thomas@xxxxxxxx> wrote:

> Don't see how you can make it work using win32.win32.*
>
> Does it produce class files if you use win32.win32.x86 ?
>
> - thomas
>
> On 2013-04-22 19:10, Sakis Kotisis wrote:
>> Hello Thomas,
>>
>> Following your recommendation, I tried the following both with Eclipse
>> 3.8 and 4.2:
>>
>> 1) Checkout into new workspace from SVN through Subversive
>> 2) Open target definition file and set as target platform
>> 3) Buckminster > Invoke Action ... > site.p2
>>
>> The p2 site is generated with the jars including the class files.
>>
>> And then with headless Buckminster 4.2 on same system:
>>
>> 1) Checkout into new workspace from SVN through TortoiseSVN
>> 2) Run the following script
>>
>> importtargetdefinition -A
>> 'F:/_Workspaces/bucky-pg/c.s.p.s/mirror.target'
>> import 'C:/Users/tkotisis/workspace/c.s.p.s/site.cquery'
>> build -c
>> perform -D target.os=win32 -D target.ws=win32 -D target.arch=* -D
>> cbi.include.source=false com.scigentech.postergenius.site#site.p2
>>
>>
>> The p2 site is generated with the class files MISSING from jars.
>>
>>
>> Below is an example of actions for a specific bundle:
>>
>> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.224
>> !MESSAGE init actor:
>> eclipse.build[g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>
>> !ENTRY org.eclipse.buckminster.core 1 293 2013-04-22 19:46:04.226
>> !MESSAGE [start g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>> buckminster.component=g.o.p.c
>> workspace.root=C:/Users/tkotisis/workspace
>> buckminster.temp=F:/TMP/bucky-pg/buildtmp/g.o.p.c_1.2.0-osgi.bundle/temp
>> buckminster.home=C:\Users\tkotisis\workspace\g.o.p.c\
>> buckminster.output=F:/TMP/bucky-pg/out/g.o.p.c_1.2.0-osgi.bundle
>> localhost=pavlos-PC
>> generator.buildTimestamp.format=2013-04-22T16:46:03.489+0000
>> buckminster.component.type=osgi.bundle
>> buckminster.version=1.2.0
>> target.nl=el_GR
>> eclipse.home=F:\TMP\buckminster4.2
>>
>> !ENTRY org.eclipse.buckminster.core 1 293 2013-04-22 19:46:04.229
>> !MESSAGE [end g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>
>> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.232
>> !MESSAGE init actor:
>> copyTargetFragments[g.o.p.c:osgi.bundle$1.2.0#target.fragments]
>>
>> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.234
>> !MESSAGE Action g.o.p.c:osgi.bundle$1.2.0#target.fragments using 'up to
>> date' policy ACTOR: Product is up to date
>>
>> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.237
>> !MESSAGE Action g.o.p.c:osgi.bundle$1.2.0#bundle.jar using 'up to date'
>> policy COUNT: Rebuild needed: File count(0) < expected(1)
>>
>> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.239
>> !MESSAGE init actor: ant[g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>> buildFileId=buckminster.pdetasks
>> targets=create.bundle.jar
>>
>> !ENTRY org.eclipse.buckminster.core 1 293 2013-04-22 19:46:04.242
>> !MESSAGE [start g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>> Product alias = action.output
>> Product base = ${buckminster.output}\jar\
>> buckminster.component=g.o.p.c
>> workspace.root=C:/Users/tkotisis/workspace
>> buckminster.temp=F:/TMP/bucky-pg/buildtmp/g.o.p.c_1.2.0-osgi.bundle/temp
>> buckminster.home=C:\Users\tkotisis\workspace\g.o.p.c\
>> buckminster.output=F:/TMP/bucky-pg/out/g.o.p.c_1.2.0-osgi.bundle
>> localhost=pavlos-PC
>> generator.buildTimestamp.format=2013-04-22T16:46:03.489+0000
>> buckminster.component.type=osgi.bundle
>> buckminster.version=1.2.0
>> target.nl=el_GR
>> eclipse.home=F:\TMP\buckminster4.2
>>
>> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-22 19:46:04.245
>> !MESSAGE Base: C:\Users\tkotisis\workspace\g.o.p.c\bin: No such file or
>> directory
>>
>> !ENTRY org.eclipse.buckminster.core 1 293 2013-04-22 19:46:04.344
>> !MESSAGE [end g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>>
>>
>>
>> Of course, in case the IDE is used, the bundle projects are built on
>> checkout and on setting the target definition as well.
>> Hence, the directory \bin already exists and contains the class files
>> before Buckminster is called.
>>
>> Is there anything else i could try to troubleshoot?
>>
>> Thanks,
>> Sakis
>>
>>
>>
>> On Sun, 21 Apr 2013 23:21:31 +0300, Thomas Hallgren <thomas@xxxxxxxx>
>> wrote:
>>
>>> I'd recommend that you create a new workspace from scatch in your IDE
>>> and see if the problem is visible there. Buckminster has no builder of
>>> it's own. It just calls on Eclipse to do the build, the same way your
>>> IDE does.
>>>
>>> - thomas
>>>
>>> On 2013-04-21 20:13, Sakis Kotisis wrote:
>>>> Hello,
>>>>
>>>> I've encountered some strange behavior with Buckminster 4.2 on
>>>> Jenkins.
>>>>
>>>> Buckminster is provisioned from
>>>> http://download.eclipse.org/tools/buckminster/headless-4.2/, with
>>>> below
>>>> features.
>>>>
>>>> Features:
>>>> org.eclipse.buckminster.core.headless.feature (%featureName)
>>>> org.eclipse.buckminster.pde.headless.feature (%featureName)
>>>> org.eclipse.buckminster.subversive.headless.feature (%featureName)
>>>> org.eclipse.buckminster.subversive.svnkit16.headless.feature
>>>> (%featureName)
>>>>
>>>> The site.p2 action completes ok and without errors.
>>>>
>>>> However, no class files are generated from eclipse.build!
>>>>
>>>> init actor: eclipse.build[g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>>> INFO: [start g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>>> buckminster.component=g.o.p.c
>>>> workspace.root=/var/lib/jenkins/workspace/PG
>>>>
>>>> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
>>>>
>>>>
>>>> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
>>>>
>>>> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
>>>>
>>>>
>>>> localhost=scm
>>>> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
>>>> buckminster.component.type=osgi.bundle
>>>> buckminster.version=1.2.0
>>>> target.nl=en_US
>>>>
>>>> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
>>>>
>>>>
>>>> INFO: [end g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>>>
>>>> Naturally, the bundle jar does not contain any class files either.
>>>>
>>>> init actor:
>>>> copyTargetFragments[g.o.p.c:osgi.bundle$1.2.0#target.fragments]
>>>> Action g.o.p.c:osgi.bundle$1.2.0#target.fragments using 'up to date'
>>>> policy ACTOR: Product is up to date
>>>> Action g.o.p.c:osgi.bundle$1.2.0#bundle.jar using 'up to date' policy
>>>> COUNT: Rebuild needed: File count(0) < expected(1)
>>>> init actor: ant[g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>>>> buildFileId=buckminster.pdetasks
>>>> targets=create.bundle.jar
>>>> INFO: [start g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>>>> Product alias = action.output
>>>> Product base = ${buckminster.output}/jar/
>>>> buckminster.component=g.o.p.c
>>>> workspace.root=/var/lib/jenkins/workspace/PG
>>>>
>>>> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
>>>>
>>>>
>>>> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
>>>>
>>>> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
>>>>
>>>>
>>>> localhost=scm
>>>> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
>>>> buckminster.component.type=osgi.bundle
>>>> buckminster.version=1.2.0
>>>> target.nl=en_US
>>>>
>>>> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
>>>>
>>>>
>>>> Base: /var/lib/jenkins/workspace/PG/g.o.p.c/bin: No such file or
>>>> directory
>>>> INFO: [end g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>>>>
>>>> Could this be a bug or am i missing something?
>>>>
>>>>
>>>>
>>>
>>
>>
>


--
Sakis Kotisis

Senior Software Engineer
SciGen Technologies, S.A.
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1047704 is a reply to message #1047492] Tue, 23 April 2013 10:40 Go to previous messageGo to next message
Lorenzo Bettini is currently offline Lorenzo Bettini
Messages: 1307
Registered: July 2009
Senior Member
But is your Jenkins running on a win32 platform?

--
Lorenzo Bettini, PhD in Computer Science, DI, Univ. Torino
HOME: http://www.lorenzobettini.it
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1047801 is a reply to message #1047704] Tue, 23 April 2013 13:09 Go to previous messageGo to next message
Sakis Kotisis is currently offline Sakis Kotisis
Messages: 31
Registered: July 2009
Member
Hello Lorenzo,

Jenkins is running on Debian, but i'm reproducing the issue on win32 to
simulate my Eclipse IDE build as much as possible.

Indeed whether on linux or win32, headless build does not include the
class files.
On win32, building from the IDE with the same flags does.

Moreover, i tested a headless build of the Mail example RCP with a similar
script and everything worked fine.

This leads me to suspect that something in the way my RCP is structured
confuses Buckminster.
My site feature (the feature site.p2 is called on) includes several
features, unlike the Mail example RCP site feature which only includes one.

A lot of trial and error awaits, I would appreciate any hints.

On Tue, 23 Apr 2013 17:40:24 +0300, Lorenzo Bettini <bettini@xxxxxxxx.it>
wrote:

> But is your Jenkins running on a win32 platform?
>


--
Sakis Kotisis

Senior Software Engineer
SciGen Technologies, S.A.
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1048131 is a reply to message #1047801] Wed, 24 April 2013 00:47 Go to previous messageGo to next message
Thomas Hallgren is currently offline Thomas Hallgren
Messages: 3215
Registered: July 2009
Senior Member
I assume that your JAVA_HOME on Jenkins appoints a JDK and not just a JRE?

Each project has an output folder for the compiler, typically denoted in
the hidden .classpath file like this:,

<classpathentry kind="output" path="bin"/>

Is that folder being created when you issue the build command? Does it
contain anything?

Does a 'build -c' and a 'build -t' yield the same output?

- thomas

On 2013-04-23 19:09, Sakis Kotisis wrote:
> Hello Lorenzo,
>
> Jenkins is running on Debian, but i'm reproducing the issue on win32 to
> simulate my Eclipse IDE build as much as possible.
>
> Indeed whether on linux or win32, headless build does not include the
> class files.
> On win32, building from the IDE with the same flags does.
>
> Moreover, i tested a headless build of the Mail example RCP with a
> similar script and everything worked fine.
>
> This leads me to suspect that something in the way my RCP is structured
> confuses Buckminster.
> My site feature (the feature site.p2 is called on) includes several
> features, unlike the Mail example RCP site feature which only includes one.
>
> A lot of trial and error awaits, I would appreciate any hints.
>
> On Tue, 23 Apr 2013 17:40:24 +0300, Lorenzo Bettini
> <bettini@xxxxxxxx.it> wrote:
>
>> But is your Jenkins running on a win32 platform?
>>
>
>
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1048366 is a reply to message #1048131] Wed, 24 April 2013 07:06 Go to previous messageGo to next message
Sakis Kotisis is currently offline Sakis Kotisis
Messages: 31
Registered: July 2009
Member
Thank you for the pointers.

Buckminster is executed from Jenkins with the following command:

[PG] $ /usr/lib/jvm/jdk1.7.0/bin/java
-Dbuckminster.output.root=/var/lib/jenkins/workspace/PG/buckminster.output
-Dbuckminster.temp.root=/var/lib/jenkins/workspace/PG/buckminster.temp
-Xmx256m -jar
/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster/plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
-application org.eclipse.buckminster.cmdline.headless -data
/var/lib/jenkins/workspace/PG --loglevel debug -S
/var/lib/jenkins/workspace/PG/commands.txt

On my test system i call it directly with JDK1.6 :

"C:\Program Files\Java\jdk1.6.0_20\bin\java.exe"
-Dbuckminster.output.root=F:\TMP\bucky-pg\out
-Dbuckminster.temp.root=F:\TMP\bucky-pg\buildtmp -Xmx256m -jar
F:\_Eclipse\rcp-juno-x86_64\plugins\org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
-application org.eclipse.buckminster.cmdline.headless -data
C:\Users\tkotisis\workspace --loglevel debug -S F:\TMP\bucky-pg-script.txt


classpathentry exists in the checked out bundle projects.

The build command is executed. The log is not very helpful though:

!ENTRY org.eclipse.buckminster.runtime 0 293 2013-04-23 11:24:04.694
!MESSAGE build '-c'

!ENTRY org.eclipse.buckminster.core 0 293 2013-04-23 11:24:04.954
!MESSAGE Doing full workspace refresh

!ENTRY org.eclipse.buckminster.core 0 293 2013-04-23 11:24:04.957
!MESSAGE Waiting for jobs to end


No bin folder is created for any bundle.
The result is the same with 'build -t'.


Let me describe the structure of my RCP, in case this might be helpful.

The RCP product is based on features, and is itself included in a feature:
<features>
<feature id="c.s.jre" version="1.6.13"/>
<feature id="org.eclipse.rcp"
version="3.6.2.r362_v20101104-9SAxFMKFkSAqi8axkv1ZjegmiBLY"/>
<feature id="org.eclipse.emf.common"/>
<feature id="org.eclipse.emf.common.ui"/>
<feature id="org.eclipse.emf.ecore"/>
<feature id="org.eclipse.emf.edit"/>
<feature id="org.eclipse.emf.edit.ui"/>
<feature id="c.s.org.eclipse.platform" version="1.0.0"/>
<feature id="c.s.org.eclipse.help" version="1.0.0"/>
<feature id="org.eclipse.nebula" version="1.0.0"/>
<feature id="org.eclipse.rest" version="3.4.2"/>
<feature id="c.s.pg.feature" version="1.21.0"/>
<feature id="c.s.pg.c" version="1.1.0"/>
<feature id="c.s.pg.co" version="1.0.5"/>
<feature id="c.s.pg.r" version="1.0.1"/>
<feature id="c.s.pg.f" version="1.1.1"/>
<feature id="c.s.pg.m.t" version="1.0.0"/>
<feature id="c.s.pg.c" version="1.15.0"/>
</features>

Note the 'c.s.pg.feature', which in turn includes the RCP product.

To build the p2 site with Buckminster, another feature was created,
'c.s.pg.site'.
It almost mirrors the product definition:

<?xml version="1.0" encoding="UTF-8"?>
<feature
id="c.s.pg.site"
label="p2 Update Site"
version="1.0.0"
provider-name="ST">
<includes id="c.s.pg.c" version="0.0.0"/>
<includes id="c.s.pg.co" version="0.0.0"/>
<includes id="c.s.pg.core" version="0.0.0"/>
<includes id="c.s.pg.feature" version="0.0.0"/>
<includes id="c.s.pg.f" version="0.0.0"/>
<includes id="c.s.pg.m.t" version="0.0.0"/>
<includes id="c.s.pg.r" version="0.0.0"/>
<includes id="org.eclipse.emf.common" version="0.0.0"/>
<includes id="org.eclipse.emf.common.ui" version="0.0.0"/>
<includes id="org.eclipse.emf.ecore" version="0.0.0"/>
<includes id="org.eclipse.emf.edit" version="0.0.0"/>
<includes id="org.eclipse.emf.edit.ui" version="0.0.0"/>
<includes id="org.eclipse.nebula" version="0.0.0"/>
<includes id="org.eclipse.rest" version="0.0.0"/>
<includes id="org.eclipse.rcp" version="0.0.0"/>
<includes id="c.s.org.eclipse.help" version="0.0.0"/>
<includes id="c.s.org.eclipse.platform" version="0.0.0"/>
</feature>

Since the mail example RCP is built alright using the same script, i can
only assume Buckminster does not like something in my project structure.


On Wed, 24 Apr 2013 07:47:47 +0300, Thomas Hallgren <thomas@xxxxxxxx> wrote:

> I assume that your JAVA_HOME on Jenkins appoints a JDK and not just a
> JRE?
>
> Each project has an output folder for the compiler, typically denoted in
> the hidden .classpath file like this:,
>
> <classpathentry kind="output" path="bin"/>
>
> Is that folder being created when you issue the build command? Does it
> contain anything?
>
> Does a 'build -c' and a 'build -t' yield the same output?
>
> - thomas
>
> On 2013-04-23 19:09, Sakis Kotisis wrote:
>> Hello Lorenzo,
>>
>> Jenkins is running on Debian, but i'm reproducing the issue on win32 to
>> simulate my Eclipse IDE build as much as possible.
>>
>> Indeed whether on linux or win32, headless build does not include the
>> class files.
>> On win32, building from the IDE with the same flags does.
>>
>> Moreover, i tested a headless build of the Mail example RCP with a
>> similar script and everything worked fine.
>>
>> This leads me to suspect that something in the way my RCP is structured
>> confuses Buckminster.
>> My site feature (the feature site.p2 is called on) includes several
>> features, unlike the Mail example RCP site feature which only includes
>> one.
>>
>> A lot of trial and error awaits, I would appreciate any hints.
>>
>> On Tue, 23 Apr 2013 17:40:24 +0300, Lorenzo Bettini
>> <bettini@xxxxxxxx.it> wrote:
>>
>>> But is your Jenkins running on a win32 platform?
>>>
>>
>>
>


--
Sakis Kotisis

Senior Software Engineer
SciGen Technologies, S.A.
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1048452 is a reply to message #1048366] Wed, 24 April 2013 09:42 Go to previous messageGo to next message
Thomas Hallgren is currently offline Thomas Hallgren
Messages: 3215
Registered: July 2009
Senior Member
On 2013-04-24 13:06, Sakis Kotisis wrote:
> Thank you for the pointers.
>
> Buckminster is executed from Jenkins with the following command:
>
> [PG] $ /usr/lib/jvm/jdk1.7.0/bin/java
> -Dbuckminster.output.root=/var/lib/jenkins/workspace/PG/buckminster.output
> -Dbuckminster.temp.root=/var/lib/jenkins/workspace/PG/buckminster.temp
> -Xmx256m -jar
> /var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster/plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
> -application org.eclipse.buckminster.cmdline.headless -data
> /var/lib/jenkins/workspace/PG --loglevel debug -S
> /var/lib/jenkins/workspace/PG/commands.txt
>
> On my test system i call it directly with JDK1.6 :
>
> "C:\Program Files\Java\jdk1.6.0_20\bin\java.exe"
> -Dbuckminster.output.root=F:\TMP\bucky-pg\out
> -Dbuckminster.temp.root=F:\TMP\bucky-pg\buildtmp -Xmx256m -jar
> F:\_Eclipse\rcp-juno-x86_64\plugins\org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
> -application org.eclipse.buckminster.cmdline.headless -data
> C:\Users\tkotisis\workspace --loglevel debug -S F:\TMP\bucky-pg-script.txt
>
>
> classpathentry exists in the checked out bundle projects.
>
> The build command is executed. The log is not very helpful though:
>
> !ENTRY org.eclipse.buckminster.runtime 0 293 2013-04-23 11:24:04.694
> !MESSAGE build '-c'
>
> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-23 11:24:04.954
> !MESSAGE Doing full workspace refresh
>
> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-23 11:24:04.957
> !MESSAGE Waiting for jobs to end
>
Something here isn't right. The actual build does nothing. If it did,
there should be some message indicating that fact.

What features do you have installed in the Headless Buckminster? Is the
PDE feature present? What's the output of buckminster lscmd ?

- thomas
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1048534 is a reply to message #1048452] Wed, 24 April 2013 11:58 Go to previous messageGo to next message
Sakis Kotisis is currently offline Sakis Kotisis
Messages: 31
Registered: July 2009
Member
I assume you mean listsite, right?

C:\Users\tkotisis>"C:\Program Files\Java\jdk1.6.0_20\bin\java.exe"
-Xmx256m -jar
F:\TMP\buckminster4.2\plugins\org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
-application org.eclipse.buckminster.cmdline.headless --loglevel debug
listsite
listsite
Features:
org.eclipse.buckminster.core.headless.feature (%featureName)
org.eclipse.buckminster.pde.headless.feature (%featureName)
org.eclipse.buckminster.product (%featureName)
org.eclipse.buckminster.subversive.headless.feature (%featureName)
org.eclipse.buckminster.subversive.svnkit16.headless.feature
(%featureName)
org.eclipse.equinox.p2.director.feature (%featureName)

However, building the mail example rcp (which builds ok) produces the log
output below.
Please note, besides some errors there is no log output either.
Could you, please, post a build log snippet, so i know what to look for?

!ENTRY org.eclipse.buckminster.runtime 0 293 2013-04-24 12:28:40.651
!MESSAGE build '-c'

!ENTRY org.eclipse.equinox.preferences 4 2 2013-04-24 12:28:41.291
!MESSAGE Problems occurred when invoking code from plug-in:
"org.eclipse.equinox.preferences".
!STACK 0
java.lang.NoClassDefFoundError: Could not initialize class
org.eclipse.jface.preference.PreferenceConverter
at
org.eclipse.wb.internal.core.preferences.PreferenceInitializer.initializeDefaultPreferences(PreferenceInitializer.java:50)
at
org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper$1.run(PreferenceServiceRegistryHelper.java:300)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at
org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.runInitializer(PreferenceServiceRegistryHelper.java:303)
at
org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.applyRuntimeDefaults(PreferenceServiceRegistryHelper.java:131)
at
org.eclipse.core.internal.preferences.PreferencesService.applyRuntimeDefaults(PreferencesService.java:368)
at
org.eclipse.core.internal.preferences.DefaultPreferences.applyRuntimeDefaults(DefaultPreferences.java:166)
at
org.eclipse.core.internal.preferences.DefaultPreferences.load(DefaultPreferences.java:237)
at
org.eclipse.core.internal.preferences.EclipsePreferences.create(EclipsePreferences.java:410)
at
org.eclipse.core.internal.preferences.EclipsePreferences.internalNode(EclipsePreferences.java:663)
at
org.eclipse.core.internal.preferences.EclipsePreferences.node(EclipsePreferences.java:805)
at
org.eclipse.core.internal.preferences.AbstractScope.getNode(AbstractScope.java:38)
at
org.eclipse.core.runtime.preferences.DefaultScope.getNode(DefaultScope.java:76)
at
org.eclipse.ui.preferences.ScopedPreferenceStore.getDefaultPreferences(ScopedPreferenceStore.java:250)
at
org.eclipse.ui.preferences.ScopedPreferenceStore.getPreferenceNodes(ScopedPreferenceStore.java:285)
at
org.eclipse.ui.preferences.ScopedPreferenceStore.internalGet(ScopedPreferenceStore.java:475)
at
org.eclipse.ui.preferences.ScopedPreferenceStore.getBoolean(ScopedPreferenceStore.java:387)
at
org.eclipse.wb.internal.core.editor.describer.JavaSourceUiDescriber.isGUISource(JavaSourceUiDescriber.java:65)
at
org.eclipse.wb.internal.core.editor.describer.JavaSourceUiDescriber.describe(JavaSourceUiDescriber.java:52)
at
org.eclipse.core.internal.content.ContentTypeCatalog.describe(ContentTypeCatalog.java:218)
at
org.eclipse.core.internal.content.ContentTypeCatalog.collectMatchingByContents(ContentTypeCatalog.java:190)
at
org.eclipse.core.internal.content.ContentTypeCatalog.internalFindContentTypesFor(ContentTypeCatalog.java:403)
at
org.eclipse.core.internal.content.ContentTypeCatalog.internalFindContentTypesFor(ContentTypeCatalog.java:450)
at
org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:346)
at
org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:360)
at
org.eclipse.core.internal.content.ContentTypeMatcher.getDescriptionFor(ContentTypeMatcher.java:86)
at
org.eclipse.core.internal.resources.ContentDescriptionManager.readDescription(ContentDescriptionManager.java:445)
at
org.eclipse.core.internal.resources.ContentDescriptionManager.getDescriptionFor(ContentDescriptionManager.java:355)
at
org.eclipse.core.internal.resources.File.internalGetCharset(File.java:246)
at org.eclipse.core.internal.resources.File.getCharset(File.java:207)
at org.eclipse.core.internal.resources.File.getCharset(File.java:194)
at
org.eclipse.jdt.internal.core.util.Util.getResourceContentsAsCharArray(Util.java:1156)
at
org.eclipse.jdt.internal.core.builder.SourceFile.getContents(SourceFile.java:79)
at org.eclipse.jdt.internal.compiler.ReadManager.run(ReadManager.java:173)
at java.lang.Thread.run(Thread.java:619)

!ENTRY org.eclipse.equinox.preferences 4 2 2013-04-24 12:28:41.295
!MESSAGE Problems occurred when invoking code from plug-in:
"org.eclipse.equinox.preferences".
!STACK 0
java.lang.ExceptionInInitializerError
at
org.eclipse.wb.internal.core.preferences.PreferenceInitializer.initializeDefaultPreferences(PreferenceInitializer.java:50)
at
org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper$1.run(PreferenceServiceRegistryHelper.java:300)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at
org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.runInitializer(PreferenceServiceRegistryHelper.java:303)
at
org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.applyRuntimeDefaults(PreferenceServiceRegistryHelper.java:131)
at
org.eclipse.core.internal.preferences.PreferencesService.applyRuntimeDefaults(PreferencesService.java:368)
at
org.eclipse.core.internal.preferences.DefaultPreferences.applyRuntimeDefaults(DefaultPreferences.java:166)
at
org.eclipse.core.internal.preferences.DefaultPreferences.load(DefaultPreferences.java:237)
at
org.eclipse.core.internal.preferences.EclipsePreferences.create(EclipsePreferences.java:410)
at
org.eclipse.core.internal.preferences.EclipsePreferences.internalNode(EclipsePreferences.java:663)
at
org.eclipse.core.internal.preferences.EclipsePreferences.node(EclipsePreferences.java:805)
at
org.eclipse.core.internal.preferences.AbstractScope.getNode(AbstractScope.java:38)
at
org.eclipse.core.runtime.preferences.DefaultScope.getNode(DefaultScope.java:76)
at
org.eclipse.ui.preferences.ScopedPreferenceStore.getDefaultPreferences(ScopedPreferenceStore.java:250)
at
org.eclipse.ui.preferences.ScopedPreferenceStore.getPreferenceNodes(ScopedPreferenceStore.java:285)
at
org.eclipse.ui.preferences.ScopedPreferenceStore.internalGet(ScopedPreferenceStore.java:475)
at
org.eclipse.ui.preferences.ScopedPreferenceStore.getBoolean(ScopedPreferenceStore.java:387)
at
org.eclipse.wb.internal.core.editor.describer.JavaSourceUiDescriber.isGUISource(JavaSourceUiDescriber.java:65)
at
org.eclipse.wb.internal.core.editor.describer.JavaSourceUiDescriber.describe(JavaSourceUiDescriber.java:52)
at
org.eclipse.core.internal.content.ContentTypeCatalog.describe(ContentTypeCatalog.java:218)
at
org.eclipse.core.internal.content.ContentTypeCatalog.collectMatchingByContents(ContentTypeCatalog.java:190)
at
org.eclipse.core.internal.content.ContentTypeCatalog.internalFindContentTypesFor(ContentTypeCatalog.java:403)
at
org.eclipse.core.internal.content.ContentTypeCatalog.internalFindContentTypesFor(ContentTypeCatalog.java:450)
at
org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:346)
at
org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:360)
at
org.eclipse.core.internal.content.ContentTypeMatcher.getDescriptionFor(ContentTypeMatcher.java:86)
at
org.eclipse.core.internal.resources.ContentDescriptionManager.readDescription(ContentDescriptionManager.java:445)
at
org.eclipse.core.internal.resources.ContentDescriptionManager.getDescriptionFor(ContentDescriptionManager.java:355)
at
org.eclipse.core.internal.resources.File.internalGetCharset(File.java:246)
at org.eclipse.core.internal.resources.File.getCharset(File.java:207)
at org.eclipse.core.internal.resources.File.getCharset(File.java:194)
at
org.eclipse.jdt.internal.core.util.Util.getResourceContentsAsCharArray(Util.java:1156)
at
org.eclipse.jdt.internal.core.builder.SourceFile.getContents(SourceFile.java:79)
at org.eclipse.jdt.internal.compiler.ReadManager.run(ReadManager.java:173)
at java.lang.Thread.run(Thread.java:619)
Caused by: org.eclipse.swt.SWTException: Invalid thread access
at org.eclipse.swt.SWT.error(SWT.java:4361)
at org.eclipse.swt.SWT.error(SWT.java:4276)
at org.eclipse.swt.SWT.error(SWT.java:4247)
at org.eclipse.swt.widgets.Display.error(Display.java:1258)
at org.eclipse.swt.widgets.Display.checkDevice(Display.java:764)
at org.eclipse.swt.widgets.Display.getSystemFont(Display.java:2459)
at
org.eclipse.jface.preference.PreferenceConverter.<clinit>(PreferenceConverter.java:84)
... 35 more

!ENTRY org.eclipse.equinox.preferences 4 2 2013-04-24 12:28:41.298
!MESSAGE Problems occurred when invoking code from plug-in:
"org.eclipse.equinox.preferences".
!STACK 0
java.lang.NoClassDefFoundError: Could not initialize class
org.eclipse.jface.preference.PreferenceConverter
at
org.eclipse.wb.internal.core.preferences.PreferenceInitializer.initializeDefaultPreferences(PreferenceInitializer.java:50)
at
org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper$1.run(PreferenceServiceRegistryHelper.java:300)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at
org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.runInitializer(PreferenceServiceRegistryHelper.java:303)
at
org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.applyRuntimeDefaults(PreferenceServiceRegistryHelper.java:131)
at
org.eclipse.core.internal.preferences.PreferencesService.applyRuntimeDefaults(PreferencesService.java:368)
at
org.eclipse.core.internal.preferences.DefaultPreferences.applyRuntimeDefaults(DefaultPreferences.java:166)
at
org.eclipse.core.internal.preferences.DefaultPreferences.load(DefaultPreferences.java:237)
at
org.eclipse.core.internal.preferences.EclipsePreferences.create(EclipsePreferences.java:410)
at
org.eclipse.core.internal.preferences.EclipsePreferences.internalNode(EclipsePreferences.java:663)
at
org.eclipse.core.internal.preferences.EclipsePreferences.node(EclipsePreferences.java:805)
at
org.eclipse.core.internal.preferences.AbstractScope.getNode(AbstractScope.java:38)
at
org.eclipse.core.runtime.preferences.DefaultScope.getNode(DefaultScope.java:76)
at
org.eclipse.ui.preferences.ScopedPreferenceStore.getDefaultPreferences(ScopedPreferenceStore.java:250)
at
org.eclipse.ui.preferences.ScopedPreferenceStore.getPreferenceNodes(ScopedPreferenceStore.java:285)
at
org.eclipse.ui.preferences.ScopedPreferenceStore.internalGet(ScopedPreferenceStore.java:475)
at
org.eclipse.ui.preferences.ScopedPreferenceStore.getBoolean(ScopedPreferenceStore.java:387)
at
org.eclipse.wb.internal.core.editor.describer.JavaSourceUiDescriber.isGUISource(JavaSourceUiDescriber.java:65)
at
org.eclipse.wb.internal.core.editor.describer.JavaSourceUiDescriber.describe(JavaSourceUiDescriber.java:52)
at
org.eclipse.core.internal.content.ContentTypeCatalog.describe(ContentTypeCatalog.java:218)
at
org.eclipse.core.internal.content.ContentTypeCatalog.collectMatchingByContents(ContentTypeCatalog.java:190)
at
org.eclipse.core.internal.content.ContentTypeCatalog.internalFindContentTypesFor(ContentTypeCatalog.java:403)
at
org.eclipse.core.internal.content.ContentTypeCatalog.internalFindContentTypesFor(ContentTypeCatalog.java:450)
at
org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:346)
at
org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:360)
at
org.eclipse.core.internal.content.ContentTypeMatcher.getDescriptionFor(ContentTypeMatcher.java:86)
at
org.eclipse.core.internal.resources.ContentDescriptionManager.readDescription(ContentDescriptionManager.java:445)
at
org.eclipse.core.internal.resources.ContentDescriptionManager.getDescriptionFor(ContentDescriptionManager.java:355)
at
org.eclipse.core.internal.resources.File.internalGetCharset(File.java:246)
at org.eclipse.core.internal.resources.File.getCharset(File.java:207)
at org.eclipse.core.internal.resources.File.getCharset(File.java:194)
at
org.eclipse.jdt.internal.core.util.Util.getResourceContentsAsCharArray(Util.java:1156)
at
org.eclipse.jdt.internal.core.builder.SourceFile.getContents(SourceFile.java:79)
at org.eclipse.jdt.internal.compiler.ReadManager.run(ReadManager.java:173)
at java.lang.Thread.run(Thread.java:619)

!ENTRY org.eclipse.buckminster.core 0 293 2013-04-24 12:28:43.125
!MESSAGE Doing full workspace refresh

On Wed, 24 Apr 2013 16:42:37 +0300, Thomas Hallgren <thomas@xxxxxxxx> wrote:

> On 2013-04-24 13:06, Sakis Kotisis wrote:
>> Thank you for the pointers.
>>
>> Buckminster is executed from Jenkins with the following command:
>>
>> [PG] $ /usr/lib/jvm/jdk1.7.0/bin/java
>> -Dbuckminster.output.root=/var/lib/jenkins/workspace/PG/buckminster.output
>> -Dbuckminster.temp.root=/var/lib/jenkins/workspace/PG/buckminster.temp
>> -Xmx256m -jar
>> /var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster/plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
>> -application org.eclipse.buckminster.cmdline.headless -data
>> /var/lib/jenkins/workspace/PG --loglevel debug -S
>> /var/lib/jenkins/workspace/PG/commands.txt
>>
>> On my test system i call it directly with JDK1.6 :
>>
>> "C:\Program Files\Java\jdk1.6.0_20\bin\java.exe"
>> -Dbuckminster.output.root=F:\TMP\bucky-pg\out
>> -Dbuckminster.temp.root=F:\TMP\bucky-pg\buildtmp -Xmx256m -jar
>> F:\_Eclipse\rcp-juno-x86_64\plugins\org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
>> -application org.eclipse.buckminster.cmdline.headless -data
>> C:\Users\tkotisis\workspace --loglevel debug -S
>> F:\TMP\bucky-pg-script.txt
>>
>>
>> classpathentry exists in the checked out bundle projects.
>>
>> The build command is executed. The log is not very helpful though:
>>
>> !ENTRY org.eclipse.buckminster.runtime 0 293 2013-04-23 11:24:04.694
>> !MESSAGE build '-c'
>>
>> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-23 11:24:04.954
>> !MESSAGE Doing full workspace refresh
>>
>> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-23 11:24:04.957
>> !MESSAGE Waiting for jobs to end
>>
> Something here isn't right. The actual build does nothing. If it did,
> there should be some message indicating that fact.
>
> What features do you have installed in the Headless Buckminster? Is the
> PDE feature present? What's the output of buckminster lscmd ?
>
> - thomas
>


--
Sakis Kotisis

Senior Software Engineer
SciGen Technologies, S.A.
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1048557 is a reply to message #1048534] Wed, 24 April 2013 12:36 Go to previous messageGo to next message
Sakis Kotisis is currently offline Sakis Kotisis
Messages: 31
Registered: July 2009
Member
Sorry, the log in my previous email was from building with an IDE
Buckminster.

Building the mail example rcp with headless Buckminster, produces the same
(thrifty) build step log output as building my rcp.

I do the following:

1) Copy mail example rcp project files to folder
'C:\Users\tkotisis\workspace2'
2) Delete 'bin' and .settings folder
3) Execute the following command
"C:\Program Files\Java\jdk1.6.0_20\bin\java.exe"
-Dbuckminster.output.root=F:\TMP\buckymail\out
-Dbuckminster.temp.root=F:\TMP\buckymail\buildtmp -Xmx256m -jar
F:\TMP\buckminster4.2\plugins\org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
-application org.eclipse.buckminster.cmdline.headless -data
C:\Users\tkotisis\workspace2 --loglevel debug -S
F:\TMP\buckytest-script.txt

, with following script

importtargetdefinition -A
'F:/_Workspaces/buckytest/com.example.mail.site/rcp.target'
import 'C:/Users/tkotisis/workspace2/com.example.mail.site/site.cquery'
build -c
perform -D target.os=win32 -D target.ws=win32 -D target.arch=x86_64 -D
cbi.include.source=false com.example.mail.site#site.p2

OUTCOME
The bin folder is generated in 'com.example.mail' bundle.
The log output for the build step is:

!ENTRY org.eclipse.buckminster.runtime 0 293 2013-04-24 19:22:14.689
!MESSAGE build '-c'

!ENTRY org.eclipse.buckminster.core 0 293 2013-04-24 19:22:16.420
!MESSAGE Doing full workspace refresh

!ENTRY org.eclipse.buckminster.core 0 293 2013-04-24 19:22:16.439
!MESSAGE Waiting for jobs to end

On Wed, 24 Apr 2013 18:58:29 +0300, Sakis Kotisis
<sakis.kotisis@xxxxxxxx> wrote:

> I assume you mean listsite, right?
>
> C:\Users\tkotisis>"C:\Program Files\Java\jdk1.6.0_20\bin\java.exe"
> -Xmx256m -jar
> F:\TMP\buckminster4.2\plugins\org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
> -application org.eclipse.buckminster.cmdline.headless --loglevel debug
> listsite
> listsite
> Features:
> org.eclipse.buckminster.core.headless.feature (%featureName)
> org.eclipse.buckminster.pde.headless.feature (%featureName)
> org.eclipse.buckminster.product (%featureName)
> org.eclipse.buckminster.subversive.headless.feature (%featureName)
> org.eclipse.buckminster.subversive.svnkit16.headless.feature
> (%featureName)
> org.eclipse.equinox.p2.director.feature (%featureName)
>
> However, building the mail example rcp (which builds ok) produces the
> log output below.
> Please note, besides some errors there is no log output either.
> Could you, please, post a build log snippet, so i know what to look for?
>
> !ENTRY org.eclipse.buckminster.runtime 0 293 2013-04-24 12:28:40.651
> !MESSAGE build '-c'
>
> !ENTRY org.eclipse.equinox.preferences 4 2 2013-04-24 12:28:41.291
> !MESSAGE Problems occurred when invoking code from plug-in:
> "org.eclipse.equinox.preferences".
> !STACK 0
> java.lang.NoClassDefFoundError: Could not initialize class
> org.eclipse.jface.preference.PreferenceConverter
> at
> org.eclipse.wb.internal.core.preferences.PreferenceInitializer.initializeDefaultPreferences(PreferenceInitializer.java:50)
> at
> org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper$1.run(PreferenceServiceRegistryHelper.java:300)
> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> at
> org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.runInitializer(PreferenceServiceRegistryHelper.java:303)
> at
> org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.applyRuntimeDefaults(PreferenceServiceRegistryHelper.java:131)
> at
> org.eclipse.core.internal.preferences.PreferencesService.applyRuntimeDefaults(PreferencesService.java:368)
> at
> org.eclipse.core.internal.preferences.DefaultPreferences.applyRuntimeDefaults(DefaultPreferences.java:166)
> at
> org.eclipse.core.internal.preferences.DefaultPreferences.load(DefaultPreferences.java:237)
> at
> org.eclipse.core.internal.preferences.EclipsePreferences.create(EclipsePreferences.java:410)
> at
> org.eclipse.core.internal.preferences.EclipsePreferences.internalNode(EclipsePreferences.java:663)
> at
> org.eclipse.core.internal.preferences.EclipsePreferences.node(EclipsePreferences.java:805)
> at
> org.eclipse.core.internal.preferences.AbstractScope.getNode(AbstractScope.java:38)
> at
> org.eclipse.core.runtime.preferences.DefaultScope.getNode(DefaultScope.java:76)
> at
> org.eclipse.ui.preferences.ScopedPreferenceStore.getDefaultPreferences(ScopedPreferenceStore.java:250)
> at
> org.eclipse.ui.preferences.ScopedPreferenceStore.getPreferenceNodes(ScopedPreferenceStore.java:285)
> at
> org.eclipse.ui.preferences.ScopedPreferenceStore.internalGet(ScopedPreferenceStore.java:475)
> at
> org.eclipse.ui.preferences.ScopedPreferenceStore.getBoolean(ScopedPreferenceStore.java:387)
> at
> org.eclipse.wb.internal.core.editor.describer.JavaSourceUiDescriber.isGUISource(JavaSourceUiDescriber.java:65)
> at
> org.eclipse.wb.internal.core.editor.describer.JavaSourceUiDescriber.describe(JavaSourceUiDescriber.java:52)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.describe(ContentTypeCatalog.java:218)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.collectMatchingByContents(ContentTypeCatalog.java:190)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.internalFindContentTypesFor(ContentTypeCatalog.java:403)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.internalFindContentTypesFor(ContentTypeCatalog.java:450)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:346)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:360)
> at
> org.eclipse.core.internal.content.ContentTypeMatcher.getDescriptionFor(ContentTypeMatcher.java:86)
> at
> org.eclipse.core.internal.resources.ContentDescriptionManager.readDescription(ContentDescriptionManager.java:445)
> at
> org.eclipse.core.internal.resources.ContentDescriptionManager.getDescriptionFor(ContentDescriptionManager.java:355)
> at
> org.eclipse.core.internal.resources.File.internalGetCharset(File.java:246)
> at org.eclipse.core.internal.resources.File.getCharset(File.java:207)
> at org.eclipse.core.internal.resources.File.getCharset(File.java:194)
> at
> org.eclipse.jdt.internal.core.util.Util.getResourceContentsAsCharArray(Util.java:1156)
> at
> org.eclipse.jdt.internal.core.builder.SourceFile.getContents(SourceFile.java:79)
> at
> org.eclipse.jdt.internal.compiler.ReadManager.run(ReadManager.java:173)
> at java.lang.Thread.run(Thread.java:619)
>
> !ENTRY org.eclipse.equinox.preferences 4 2 2013-04-24 12:28:41.295
> !MESSAGE Problems occurred when invoking code from plug-in:
> "org.eclipse.equinox.preferences".
> !STACK 0
> java.lang.ExceptionInInitializerError
> at
> org.eclipse.wb.internal.core.preferences.PreferenceInitializer.initializeDefaultPreferences(PreferenceInitializer.java:50)
> at
> org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper$1.run(PreferenceServiceRegistryHelper.java:300)
> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> at
> org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.runInitializer(PreferenceServiceRegistryHelper.java:303)
> at
> org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.applyRuntimeDefaults(PreferenceServiceRegistryHelper.java:131)
> at
> org.eclipse.core.internal.preferences.PreferencesService.applyRuntimeDefaults(PreferencesService.java:368)
> at
> org.eclipse.core.internal.preferences.DefaultPreferences.applyRuntimeDefaults(DefaultPreferences.java:166)
> at
> org.eclipse.core.internal.preferences.DefaultPreferences.load(DefaultPreferences.java:237)
> at
> org.eclipse.core.internal.preferences.EclipsePreferences.create(EclipsePreferences.java:410)
> at
> org.eclipse.core.internal.preferences.EclipsePreferences.internalNode(EclipsePreferences.java:663)
> at
> org.eclipse.core.internal.preferences.EclipsePreferences.node(EclipsePreferences.java:805)
> at
> org.eclipse.core.internal.preferences.AbstractScope.getNode(AbstractScope.java:38)
> at
> org.eclipse.core.runtime.preferences.DefaultScope.getNode(DefaultScope.java:76)
> at
> org.eclipse.ui.preferences.ScopedPreferenceStore.getDefaultPreferences(ScopedPreferenceStore.java:250)
> at
> org.eclipse.ui.preferences.ScopedPreferenceStore.getPreferenceNodes(ScopedPreferenceStore.java:285)
> at
> org.eclipse.ui.preferences.ScopedPreferenceStore.internalGet(ScopedPreferenceStore.java:475)
> at
> org.eclipse.ui.preferences.ScopedPreferenceStore.getBoolean(ScopedPreferenceStore.java:387)
> at
> org.eclipse.wb.internal.core.editor.describer.JavaSourceUiDescriber.isGUISource(JavaSourceUiDescriber.java:65)
> at
> org.eclipse.wb.internal.core.editor.describer.JavaSourceUiDescriber.describe(JavaSourceUiDescriber.java:52)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.describe(ContentTypeCatalog.java:218)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.collectMatchingByContents(ContentTypeCatalog.java:190)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.internalFindContentTypesFor(ContentTypeCatalog.java:403)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.internalFindContentTypesFor(ContentTypeCatalog.java:450)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:346)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:360)
> at
> org.eclipse.core.internal.content.ContentTypeMatcher.getDescriptionFor(ContentTypeMatcher.java:86)
> at
> org.eclipse.core.internal.resources.ContentDescriptionManager.readDescription(ContentDescriptionManager.java:445)
> at
> org.eclipse.core.internal.resources.ContentDescriptionManager.getDescriptionFor(ContentDescriptionManager.java:355)
> at
> org.eclipse.core.internal.resources.File.internalGetCharset(File.java:246)
> at org.eclipse.core.internal.resources.File.getCharset(File.java:207)
> at org.eclipse.core.internal.resources.File.getCharset(File.java:194)
> at
> org.eclipse.jdt.internal.core.util.Util.getResourceContentsAsCharArray(Util.java:1156)
> at
> org.eclipse.jdt.internal.core.builder.SourceFile.getContents(SourceFile.java:79)
> at
> org.eclipse.jdt.internal.compiler.ReadManager.run(ReadManager.java:173)
> at java.lang.Thread.run(Thread.java:619)
> Caused by: org.eclipse.swt.SWTException: Invalid thread access
> at org.eclipse.swt.SWT.error(SWT.java:4361)
> at org.eclipse.swt.SWT.error(SWT.java:4276)
> at org.eclipse.swt.SWT.error(SWT.java:4247)
> at org.eclipse.swt.widgets.Display.error(Display.java:1258)
> at org.eclipse.swt.widgets.Display.checkDevice(Display.java:764)
> at org.eclipse.swt.widgets.Display.getSystemFont(Display.java:2459)
> at
> org.eclipse.jface.preference.PreferenceConverter.<clinit>(PreferenceConverter.java:84)
> ... 35 more
>
> !ENTRY org.eclipse.equinox.preferences 4 2 2013-04-24 12:28:41.298
> !MESSAGE Problems occurred when invoking code from plug-in:
> "org.eclipse.equinox.preferences".
> !STACK 0
> java.lang.NoClassDefFoundError: Could not initialize class
> org.eclipse.jface.preference.PreferenceConverter
> at
> org.eclipse.wb.internal.core.preferences.PreferenceInitializer.initializeDefaultPreferences(PreferenceInitializer.java:50)
> at
> org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper$1.run(PreferenceServiceRegistryHelper.java:300)
> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> at
> org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.runInitializer(PreferenceServiceRegistryHelper.java:303)
> at
> org.eclipse.core.internal.preferences.PreferenceServiceRegistryHelper.applyRuntimeDefaults(PreferenceServiceRegistryHelper.java:131)
> at
> org.eclipse.core.internal.preferences.PreferencesService.applyRuntimeDefaults(PreferencesService.java:368)
> at
> org.eclipse.core.internal.preferences.DefaultPreferences.applyRuntimeDefaults(DefaultPreferences.java:166)
> at
> org.eclipse.core.internal.preferences.DefaultPreferences.load(DefaultPreferences.java:237)
> at
> org.eclipse.core.internal.preferences.EclipsePreferences.create(EclipsePreferences.java:410)
> at
> org.eclipse.core.internal.preferences.EclipsePreferences.internalNode(EclipsePreferences.java:663)
> at
> org.eclipse.core.internal.preferences.EclipsePreferences.node(EclipsePreferences.java:805)
> at
> org.eclipse.core.internal.preferences.AbstractScope.getNode(AbstractScope.java:38)
> at
> org.eclipse.core.runtime.preferences.DefaultScope.getNode(DefaultScope.java:76)
> at
> org.eclipse.ui.preferences.ScopedPreferenceStore.getDefaultPreferences(ScopedPreferenceStore.java:250)
> at
> org.eclipse.ui.preferences.ScopedPreferenceStore.getPreferenceNodes(ScopedPreferenceStore.java:285)
> at
> org.eclipse.ui.preferences.ScopedPreferenceStore.internalGet(ScopedPreferenceStore.java:475)
> at
> org.eclipse.ui.preferences.ScopedPreferenceStore.getBoolean(ScopedPreferenceStore.java:387)
> at
> org.eclipse.wb.internal.core.editor.describer.JavaSourceUiDescriber.isGUISource(JavaSourceUiDescriber.java:65)
> at
> org.eclipse.wb.internal.core.editor.describer.JavaSourceUiDescriber.describe(JavaSourceUiDescriber.java:52)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.describe(ContentTypeCatalog.java:218)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.collectMatchingByContents(ContentTypeCatalog.java:190)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.internalFindContentTypesFor(ContentTypeCatalog.java:403)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.internalFindContentTypesFor(ContentTypeCatalog.java:450)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:346)
> at
> org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:360)
> at
> org.eclipse.core.internal.content.ContentTypeMatcher.getDescriptionFor(ContentTypeMatcher.java:86)
> at
> org.eclipse.core.internal.resources.ContentDescriptionManager.readDescription(ContentDescriptionManager.java:445)
> at
> org.eclipse.core.internal.resources.ContentDescriptionManager.getDescriptionFor(ContentDescriptionManager.java:355)
> at
> org.eclipse.core.internal.resources.File.internalGetCharset(File.java:246)
> at org.eclipse.core.internal.resources.File.getCharset(File.java:207)
> at org.eclipse.core.internal.resources.File.getCharset(File.java:194)
> at
> org.eclipse.jdt.internal.core.util.Util.getResourceContentsAsCharArray(Util.java:1156)
> at
> org.eclipse.jdt.internal.core.builder.SourceFile.getContents(SourceFile.java:79)
> at
> org.eclipse.jdt.internal.compiler.ReadManager.run(ReadManager.java:173)
> at java.lang.Thread.run(Thread.java:619)
>
> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-24 12:28:43.125
> !MESSAGE Doing full workspace refresh
>
> On Wed, 24 Apr 2013 16:42:37 +0300, Thomas Hallgren <thomas@xxxxxxxx>
> wrote:
>
>> On 2013-04-24 13:06, Sakis Kotisis wrote:
>>> Thank you for the pointers.
>>>
>>> Buckminster is executed from Jenkins with the following command:
>>>
>>> [PG] $ /usr/lib/jvm/jdk1.7.0/bin/java
>>> -Dbuckminster.output.root=/var/lib/jenkins/workspace/PG/buckminster.output
>>> -Dbuckminster.temp.root=/var/lib/jenkins/workspace/PG/buckminster.temp
>>> -Xmx256m -jar
>>> /var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster/plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
>>> -application org.eclipse.buckminster.cmdline.headless -data
>>> /var/lib/jenkins/workspace/PG --loglevel debug -S
>>> /var/lib/jenkins/workspace/PG/commands.txt
>>>
>>> On my test system i call it directly with JDK1.6 :
>>>
>>> "C:\Program Files\Java\jdk1.6.0_20\bin\java.exe"
>>> -Dbuckminster.output.root=F:\TMP\bucky-pg\out
>>> -Dbuckminster.temp.root=F:\TMP\bucky-pg\buildtmp -Xmx256m -jar
>>> F:\_Eclipse\rcp-juno-x86_64\plugins\org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
>>> -application org.eclipse.buckminster.cmdline.headless -data
>>> C:\Users\tkotisis\workspace --loglevel debug -S
>>> F:\TMP\bucky-pg-script.txt
>>>
>>>
>>> classpathentry exists in the checked out bundle projects.
>>>
>>> The build command is executed. The log is not very helpful though:
>>>
>>> !ENTRY org.eclipse.buckminster.runtime 0 293 2013-04-23 11:24:04.694
>>> !MESSAGE build '-c'
>>>
>>> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-23 11:24:04.954
>>> !MESSAGE Doing full workspace refresh
>>>
>>> !ENTRY org.eclipse.buckminster.core 0 293 2013-04-23 11:24:04.957
>>> !MESSAGE Waiting for jobs to end
>>>
>> Something here isn't right. The actual build does nothing. If it did,
>> there should be some message indicating that fact.
>>
>> What features do you have installed in the Headless Buckminster? Is the
>> PDE feature present? What's the output of buckminster lscmd ?
>>
>> - thomas
>>
>
>


--
Sakis Kotisis

Senior Software Engineer
SciGen Technologies, S.A.
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1048690 is a reply to message #1048534] Wed, 24 April 2013 16:49 Go to previous messageGo to next message
Thomas Hallgren is currently offline Thomas Hallgren
Messages: 3215
Registered: July 2009
Senior Member
On 2013-04-24 17:58, Sakis Kotisis wrote:
> I assume you mean listsite, right?
>
No, i meant lscmds. It will show what commands that are actually
activated in the runtime.

- thomas
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1049067 is a reply to message #1048690] Thu, 25 April 2013 06:04 Go to previous messageGo to next message
Sakis Kotisis is currently offline Sakis Kotisis
Messages: 31
Registered: July 2009
Member
Please find the list of commands below.

C:\Users\tkotisis>"C:\Program Files\Java\jdk1.6.0_20\bin\java.exe"
-Xmx256m -jar
F:\TMP\buckminster4.2\plugins\org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
-application org.eclipse.buckminster.cmdline.headless --loglevel debug
lscmds
lscmds
Available commands including aliases:
org.eclipse.buckminster.cmdline.listcommands
org.eclipse.buckminster.cmdline.lscmds
org.eclipse.buckminster.core.bglaunch
org.eclipse.buckminster.core.build
org.eclipse.buckminster.core.clean
org.eclipse.buckminster.core.getcfg
org.eclipse.buckminster.core.getconfiguration
org.eclipse.buckminster.core.import
org.eclipse.buckminster.core.launch
org.eclipse.buckminster.core.make
org.eclipse.buckminster.core.perform
org.eclipse.buckminster.core.prefs.exportpreferences
org.eclipse.buckminster.core.prefs.exportprefs
org.eclipse.buckminster.core.prefs.getpref
org.eclipse.buckminster.core.prefs.getpreference
org.eclipse.buckminster.core.prefs.importpreferences
org.eclipse.buckminster.core.prefs.importprefs
org.eclipse.buckminster.core.prefs.importproxysettings
org.eclipse.buckminster.core.prefs.listpreferences
org.eclipse.buckminster.core.prefs.lsprefs
org.eclipse.buckminster.core.prefs.setpref
org.eclipse.buckminster.core.prefs.setpreference
org.eclipse.buckminster.core.prefs.unsetpref
org.eclipse.buckminster.core.prefs.unsetpreference
org.eclipse.buckminster.core.resolve
org.eclipse.buckminster.installer.install
org.eclipse.buckminster.installer.listsite
org.eclipse.buckminster.installer.uninstall
org.eclipse.buckminster.jdt.org.eclipse.buckminster.jdt.installJRE
org.eclipse.buckminster.junit.junit
org.eclipse.buckminster.pde.addbaseline
org.eclipse.buckminster.pde.addtarget
org.eclipse.buckminster.pde.addtargetplatform
org.eclipse.buckminster.pde.importtarget
org.eclipse.buckminster.pde.importtargetdefinition
org.eclipse.buckminster.pde.listbaselines
org.eclipse.buckminster.pde.listtargetdefinitions
org.eclipse.buckminster.pde.lsbaselines
org.eclipse.buckminster.pde.lstargets

On Wed, 24 Apr 2013 23:49:53 +0300, Thomas Hallgren <thomas@xxxxxxxx> wrote:

> On 2013-04-24 17:58, Sakis Kotisis wrote:
>> I assume you mean listsite, right?
>>
> No, i meant lscmds. It will show what commands that are actually
> activated in the runtime.
>
> - thomas
>


--
Sakis Kotisis

Senior Software Engineer
SciGen Technologies, S.A.
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1051096 is a reply to message #1047801] Sun, 28 April 2013 03:32 Go to previous messageGo to next message
Lorenzo Bettini is currently offline Lorenzo Bettini
Messages: 1307
Registered: July 2009
Senior Member
can you share your code?

On 04/23/2013 07:09 PM, Sakis Kotisis wrote:
> Hello Lorenzo,
>
> Jenkins is running on Debian, but i'm reproducing the issue on win32 to
> simulate my Eclipse IDE build as much as possible.
>
> Indeed whether on linux or win32, headless build does not include the
> class files.
> On win32, building from the IDE with the same flags does.
>
> Moreover, i tested a headless build of the Mail example RCP with a
> similar script and everything worked fine.
>
> This leads me to suspect that something in the way my RCP is structured
> confuses Buckminster.
> My site feature (the feature site.p2 is called on) includes several
> features, unlike the Mail example RCP site feature which only includes one.
>
> A lot of trial and error awaits, I would appreciate any hints.
>
> On Tue, 23 Apr 2013 17:40:24 +0300, Lorenzo Bettini
> <bettini@xxxxxxxx.it> wrote:
>
>> But is your Jenkins running on a win32 platform?
>>
>
>


--
Lorenzo Bettini, PhD in Computer Science, DI, Univ. Torino
HOME: http://www.lorenzobettini.it
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1051897 is a reply to message #1051096] Mon, 29 April 2013 06:42 Go to previous messageGo to next message
Sakis Kotisis is currently offline Sakis Kotisis
Messages: 31
Registered: July 2009
Member
If you mean the source code for the app i'm building, i'm afraid it's
closed source.

If you mean the Buckminster related files, please look at the end of this
mail.

I've tried several things since my last post:

* restructuring my app to mirror the Mail example RCP (single feature
including plug-ins and features)
* creating the Mail example RCP with Eclipse 3.6 and building with
Buckminster 4.2 (since my app targets Eclipse 3.6)
* fixing some plug-in warnings related to JRE execution environment
* removing any mac-only plug-ins (since building on win32)
* calling 'build -c' or 'build -t' multiple times before 'perform' in the
build script

The problem remains the same: no bin folder in the bundles being built, no
errors in log output.
The app seems assembled ok, but there are no .class files in the jars.

According to Thomas, the 'build' command should produce some output in the
logs.
However, the Mail example RCP builds fine (including the .class files),
without any additional output appearing in the log file related to the
build.

I can't think of anything else besides debugging at this point!

site.cquery:
<?xml version="1.0" encoding="UTF-8"?>
<cq:componentQuery
xmlns:cq="http://www.eclipse.org/buckminster/CQuery-1.0"
resourceMap="site.rmap">
<cq:rootRequest name="com.example.mail.site"
componentType="eclipse.feature"/>
</cq:componentQuery>

site.rmap:
<?xml version="1.0" encoding="UTF-8"?>
<rm:rmap xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0"
xmlns:rm="http://www.eclipse.org/buckminster/RMap-1.0">
<rm:locator searchPathRef="resources"/>
<rm:searchPath name="resources">
<rm:provider componentTypes="osgi.bundle,eclipse.feature"
readerType="local" source="false">
<rm:property key="buckminster.source" value="false"/>
<rm:uri format="file:///{0}/{1}/">
<bc:propertyRef key="workspace.root" />
<bc:propertyRef key="buckminster.component"/>
</rm:uri>
</rm:provider>
</rm:searchPath>
</rm:rmap>

buckminster script:
importtargetdefinition -A
'F:/_Workspaces/bucky-pg/c.s.p.site/mirror.target'
import 'C:/Users/tkotisis/workspace/c.s.p.site/site.cquery'
build -c
perform -D target.os=win32 -D target.ws=win32 -D target.arch=x86 -D
cbi.include.source=false c.s.p.site#site.p2


On Sun, 28 Apr 2013 10:32:24 +0300, Lorenzo Bettini <bettini@xxxxxxxx.it>
wrote:

> can you share your code?
>
> On 04/23/2013 07:09 PM, Sakis Kotisis wrote:
>> Hello Lorenzo,
>>
>> Jenkins is running on Debian, but i'm reproducing the issue on win32 to
>> simulate my Eclipse IDE build as much as possible.
>>
>> Indeed whether on linux or win32, headless build does not include the
>> class files.
>> On win32, building from the IDE with the same flags does.
>>
>> Moreover, i tested a headless build of the Mail example RCP with a
>> similar script and everything worked fine.
>>
>> This leads me to suspect that something in the way my RCP is structured
>> confuses Buckminster.
>> My site feature (the feature site.p2 is called on) includes several
>> features, unlike the Mail example RCP site feature which only includes
>> one.
>>
>> A lot of trial and error awaits, I would appreciate any hints.
>>
>> On Tue, 23 Apr 2013 17:40:24 +0300, Lorenzo Bettini
>> <bettini@xxxxxxxx.it> wrote:
>>
>>> But is your Jenkins running on a win32 platform?
>>>
>>
>>
>
>


--
Sakis Kotisis

Senior Software Engineer
SciGen Technologies, S.A.
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1051932 is a reply to message #1051897] Mon, 29 April 2013 07:45 Go to previous messageGo to next message
Lorenzo Bettini is currently offline Lorenzo Bettini
Messages: 1307
Registered: July 2009
Senior Member
Without the sources it's kind of hard to detect where the problem is :)

(well, almost surely, the problem is some of your bundles/features)...

it looks like you resolve your target platform using a target definition
file; I guess that target definition files refers only to win32 right?

Since, IIRC, in the past some problems were experienced when the actual
os,ws,arch was not specified in the .cquery, why don't you try to
specify it?

<cq:property key="target.arch" value="*"/>
<cq:property key="target.os" value="*"/>
<cq:property key="target.ws" value="*"/>

but that's just a guess...

cheers
Lorenzo

On 04/29/2013 12:42 PM, Sakis Kotisis wrote:
> If you mean the source code for the app i'm building, i'm afraid it's
> closed source.
>
> If you mean the Buckminster related files, please look at the end of
> this mail.
>
> I've tried several things since my last post:
>
> * restructuring my app to mirror the Mail example RCP (single feature
> including plug-ins and features)
> * creating the Mail example RCP with Eclipse 3.6 and building with
> Buckminster 4.2 (since my app targets Eclipse 3.6)
> * fixing some plug-in warnings related to JRE execution environment
> * removing any mac-only plug-ins (since building on win32)
> * calling 'build -c' or 'build -t' multiple times before 'perform' in
> the build script
>
> The problem remains the same: no bin folder in the bundles being built,
> no errors in log output.
> The app seems assembled ok, but there are no .class files in the jars.
>
> According to Thomas, the 'build' command should produce some output in
> the logs.
> However, the Mail example RCP builds fine (including the .class files),
> without any additional output appearing in the log file related to the
> build.
>
> I can't think of anything else besides debugging at this point!
>
> site.cquery:
> <?xml version="1.0" encoding="UTF-8"?>
> <cq:componentQuery
> xmlns:cq="http://www.eclipse.org/buckminster/CQuery-1.0"
> resourceMap="site.rmap">
> <cq:rootRequest name="com.example.mail.site"
> componentType="eclipse.feature"/>
> </cq:componentQuery>
>
> site.rmap:
> <?xml version="1.0" encoding="UTF-8"?>
> <rm:rmap xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0"
> xmlns:rm="http://www.eclipse.org/buckminster/RMap-1.0">
> <rm:locator searchPathRef="resources"/>
> <rm:searchPath name="resources">
> <rm:provider componentTypes="osgi.bundle,eclipse.feature"
> readerType="local" source="false">
> <rm:property key="buckminster.source" value="false"/>
> <rm:uri format="file:///{0}/{1}/">
> <bc:propertyRef key="workspace.root" />
> <bc:propertyRef key="buckminster.component"/>
> </rm:uri>
> </rm:provider>
> </rm:searchPath>
> </rm:rmap>
>
> buckminster script:
> importtargetdefinition -A
> 'F:/_Workspaces/bucky-pg/c.s.p.site/mirror.target'
> import 'C:/Users/tkotisis/workspace/c.s.p.site/site.cquery'
> build -c
> perform -D target.os=win32 -D target.ws=win32 -D target.arch=x86 -D
> cbi.include.source=false c.s.p.site#site.p2
>
>
> On Sun, 28 Apr 2013 10:32:24 +0300, Lorenzo Bettini
> <bettini@xxxxxxxx.it> wrote:
>
>> can you share your code?
>>
>> On 04/23/2013 07:09 PM, Sakis Kotisis wrote:
>>> Hello Lorenzo,
>>>
>>> Jenkins is running on Debian, but i'm reproducing the issue on win32 to
>>> simulate my Eclipse IDE build as much as possible.
>>>
>>> Indeed whether on linux or win32, headless build does not include the
>>> class files.
>>> On win32, building from the IDE with the same flags does.
>>>
>>> Moreover, i tested a headless build of the Mail example RCP with a
>>> similar script and everything worked fine.
>>>
>>> This leads me to suspect that something in the way my RCP is structured
>>> confuses Buckminster.
>>> My site feature (the feature site.p2 is called on) includes several
>>> features, unlike the Mail example RCP site feature which only
>>> includes one.
>>>
>>> A lot of trial and error awaits, I would appreciate any hints.
>>>
>>> On Tue, 23 Apr 2013 17:40:24 +0300, Lorenzo Bettini
>>> <bettini@xxxxxxxx.it> wrote:
>>>
>>>> But is your Jenkins running on a win32 platform?
>>>>
>>>
>>>
>>
>>
>
>


--
Lorenzo Bettini, PhD in Computer Science, DI, Univ. Torino
HOME: http://www.lorenzobettini.it
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1052831 is a reply to message #1046297] Tue, 30 April 2013 11:56 Go to previous messageGo to next message
Sakis Kotisis is currently offline Sakis Kotisis
Messages: 31
Registered: July 2009
Member
I started debugging the build process with headless Buckminster.

During the org.eclipse.buckminster.core.commands.Build,
wsRoot.getProjects() returns 0 projects, even after the refresh?

The reason is that the SVN checkout is taking place from TortoiseSVN (or
in the case of Jenkins, it's SVN client) before there is an actual
workspace.

Could this be the culprit? This would certainly explain why no bundle is
actually being built.
Buckminster import and perform isn't bothered, since it only checks paths
through it's rmap.

However this leaves the question open: how can a build be accomplished
with headless Buckminster without materializing the source but checking it
out from SVN?

On Sun, 21 Apr 2013 21:13:58 +0300, Sakis Kotisis
<sakis.kotisis@xxxxxxxx> wrote:

> Hello,
>
> I've encountered some strange behavior with Buckminster 4.2 on Jenkins.
>
> Buckminster is provisioned from
> http://download.eclipse.org/tools/buckminster/headless-4.2/, with below
> features.
>
> Features:
> org.eclipse.buckminster.core.headless.feature (%featureName)
> org.eclipse.buckminster.pde.headless.feature (%featureName)
> org.eclipse.buckminster.subversive.headless.feature (%featureName)
> org.eclipse.buckminster.subversive.svnkit16.headless.feature
> (%featureName)
>
> The site.p2 action completes ok and without errors.
>
> However, no class files are generated from eclipse.build!
>
> init actor: eclipse.build[g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
> INFO: [start g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
> buckminster.component=g.o.p.c
> workspace.root=/var/lib/jenkins/workspace/PG
> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
> localhost=scm
> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
> buckminster.component.type=osgi.bundle
> buckminster.version=1.2.0
> target.nl=en_US
> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
> INFO: [end g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>
> Naturally, the bundle jar does not contain any class files either.
>
> init actor:
> copyTargetFragments[g.o.p.c:osgi.bundle$1.2.0#target.fragments]
> Action g.o.p.c:osgi.bundle$1.2.0#target.fragments using 'up to date'
> policy ACTOR: Product is up to date
> Action g.o.p.c:osgi.bundle$1.2.0#bundle.jar using 'up to date' policy
> COUNT: Rebuild needed: File count(0) < expected(1)
> init actor: ant[g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
> buildFileId=buckminster.pdetasks
> targets=create.bundle.jar
> INFO: [start g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
> Product alias = action.output
> Product base = ${buckminster.output}/jar/
> buckminster.component=g.o.p.c
> workspace.root=/var/lib/jenkins/workspace/PG
> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
> localhost=scm
> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
> buckminster.component.type=osgi.bundle
> buckminster.version=1.2.0
> target.nl=en_US
> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
> Base: /var/lib/jenkins/workspace/PG/g.o.p.c/bin: No such file or
> directory
> INFO: [end g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>
> Could this be a bug or am i missing something?
>
>
>


--
Sakis Kotisis

Senior Software Engineer
SciGen Technologies, S.A.
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1052843 is a reply to message #1052831] Tue, 30 April 2013 12:46 Go to previous messageGo to next message
Lorenzo Bettini is currently offline Lorenzo Bettini
Messages: 1307
Registered: July 2009
Senior Member
I think that's quite the standard situation with Jenkins: the job is
configured to fetch/update the repository before the actual build
step... at least in my case, I always setup my Jenkins job like that
(though in my case I use git all the time).

The rmap can be configured to read from the local file system instead of
svn, and, indeed, you already do that:

<?xml version="1.0" encoding="UTF-8"?>
<rm:rmap xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0"
xmlns:rm="http://www.eclipse.org/buckminster/RMap-1.0">
<rm:locator searchPathRef="resources"/>
<rm:searchPath name="resources">
<rm:provider componentTypes="osgi.bundle,eclipse.feature"
readerType="local" source="false">
<rm:property key="buckminster.source" value="false"/>
<rm:uri format="file:///{0}/{1}/">
<bc:propertyRef key="workspace.root" />
<bc:propertyRef key="buckminster.component"/>
</rm:uri>
</rm:provider>
</rm:searchPath>
</rm:rmap>

but you need to make sure that the components can be found in
workspace.root which in your case is /var/lib/jenkins/workspace/PG if I
understand correctly, or you need to pass the correct property value for
workspace.root... moreover you use source to false, and also
buckminster.source to false...

I usually use

<rm:provider componentTypes="eclipse.feature,osgi.bundle,buckminster"
readerType="local" mutable="false">
<rm:property key="buckminster.mutable" value="false"/>

I also use

<rm:uri format="{0}/{1}">

since the workspace.root should be already absolute...

I don't know whether these are the problems

On 04/30/2013 05:56 PM, Sakis Kotisis wrote:
> I started debugging the build process with headless Buckminster.
>
> During the org.eclipse.buckminster.core.commands.Build,
> wsRoot.getProjects() returns 0 projects, even after the refresh?
>
> The reason is that the SVN checkout is taking place from TortoiseSVN (or
> in the case of Jenkins, it's SVN client) before there is an actual
> workspace.
>
> Could this be the culprit? This would certainly explain why no bundle is
> actually being built.
> Buckminster import and perform isn't bothered, since it only checks
> paths through it's rmap.
>
> However this leaves the question open: how can a build be accomplished
> with headless Buckminster without materializing the source but checking
> it out from SVN?
>
> On Sun, 21 Apr 2013 21:13:58 +0300, Sakis Kotisis
> <sakis.kotisis@xxxxxxxx> wrote:
>
>> Hello,
>>
>> I've encountered some strange behavior with Buckminster 4.2 on Jenkins.
>>
>> Buckminster is provisioned from
>> http://download.eclipse.org/tools/buckminster/headless-4.2/, with
>> below features.
>>
>> Features:
>> org.eclipse.buckminster.core.headless.feature (%featureName)
>> org.eclipse.buckminster.pde.headless.feature (%featureName)
>> org.eclipse.buckminster.subversive.headless.feature (%featureName)
>> org.eclipse.buckminster.subversive.svnkit16.headless.feature
>> (%featureName)
>>
>> The site.p2 action completes ok and without errors.
>>
>> However, no class files are generated from eclipse.build!
>>
>> init actor: eclipse.build[g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>> INFO: [start g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>> buckminster.component=g.o.p.c
>> workspace.root=/var/lib/jenkins/workspace/PG
>>
>> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
>>
>> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
>>
>> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
>>
>> localhost=scm
>> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
>> buckminster.component.type=osgi.bundle
>> buckminster.version=1.2.0
>> target.nl=en_US
>>
>> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
>>
>> INFO: [end g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>
>> Naturally, the bundle jar does not contain any class files either.
>>
>> init actor:
>> copyTargetFragments[g.o.p.c:osgi.bundle$1.2.0#target.fragments]
>> Action g.o.p.c:osgi.bundle$1.2.0#target.fragments using 'up to date'
>> policy ACTOR: Product is up to date
>> Action g.o.p.c:osgi.bundle$1.2.0#bundle.jar using 'up to date' policy
>> COUNT: Rebuild needed: File count(0) < expected(1)
>> init actor: ant[g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>> buildFileId=buckminster.pdetasks
>> targets=create.bundle.jar
>> INFO: [start g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>> Product alias = action.output
>> Product base = ${buckminster.output}/jar/
>> buckminster.component=g.o.p.c
>> workspace.root=/var/lib/jenkins/workspace/PG
>>
>> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
>>
>> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
>>
>> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
>>
>> localhost=scm
>> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
>> buckminster.component.type=osgi.bundle
>> buckminster.version=1.2.0
>> target.nl=en_US
>>
>> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
>>
>> Base: /var/lib/jenkins/workspace/PG/g.o.p.c/bin: No such file or
>> directory
>> INFO: [end g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>>
>> Could this be a bug or am i missing something?
>>
>>
>>
>
>


--
Lorenzo Bettini, PhD in Computer Science, DI, Univ. Torino
HOME: http://www.lorenzobettini.it
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1052973 is a reply to message #1052843] Wed, 01 May 2013 12:49 Go to previous messageGo to next message
Sakis Kotisis is currently offline Sakis Kotisis
Messages: 31
Registered: July 2009
Member
Thanks for the help Lorenzo.

I'm pretty sure though, that this the reason the bundles are not being
built.
I.e. during org.eclipse.buckminster.core.commands.Build execution,
Buckminster does not find any projects in it's workspace.

I also tried with source="true" and mutable="false".

I don't understand why it works with the Mail example RCP though, or in
your case.
Maybe by refreshing the workspace, it picks up the projects.

Thomas could shed some light.

In the meantime I'm trying to materialize the source from SVN with
Buckminster.
Let's see how this goes.

On Tue, 30 Apr 2013 19:46:41 +0300, Lorenzo Bettini <bettini@xxxxxxxx.it>
wrote:

> I think that's quite the standard situation with Jenkins: the job is
> configured to fetch/update the repository before the actual build
> step... at least in my case, I always setup my Jenkins job like that
> (though in my case I use git all the time).
>
> The rmap can be configured to read from the local file system instead of
> svn, and, indeed, you already do that:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <rm:rmap xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0"
> xmlns:rm="http://www.eclipse.org/buckminster/RMap-1.0">
> <rm:locator searchPathRef="resources"/>
> <rm:searchPath name="resources">
> <rm:provider componentTypes="osgi.bundle,eclipse.feature"
> readerType="local" source="false">
> <rm:property key="buckminster.source" value="false"/>
> <rm:uri format="file:///{0}/{1}/">
> <bc:propertyRef key="workspace.root" />
> <bc:propertyRef key="buckminster.component"/>
> </rm:uri>
> </rm:provider>
> </rm:searchPath>
> </rm:rmap>
>
> but you need to make sure that the components can be found in
> workspace.root which in your case is /var/lib/jenkins/workspace/PG if I
> understand correctly, or you need to pass the correct property value for
> workspace.root... moreover you use source to false, and also
> buckminster.source to false...
>
> I usually use
>
> <rm:provider componentTypes="eclipse.feature,osgi.bundle,buckminster"
> readerType="local" mutable="false">
> <rm:property key="buckminster.mutable" value="false"/>
>
> I also use
>
> <rm:uri format="{0}/{1}">
>
> since the workspace.root should be already absolute...
>
> I don't know whether these are the problems
>
> On 04/30/2013 05:56 PM, Sakis Kotisis wrote:
>> I started debugging the build process with headless Buckminster.
>>
>> During the org.eclipse.buckminster.core.commands.Build,
>> wsRoot.getProjects() returns 0 projects, even after the refresh?
>>
>> The reason is that the SVN checkout is taking place from TortoiseSVN (or
>> in the case of Jenkins, it's SVN client) before there is an actual
>> workspace.
>>
>> Could this be the culprit? This would certainly explain why no bundle is
>> actually being built.
>> Buckminster import and perform isn't bothered, since it only checks
>> paths through it's rmap.
>>
>> However this leaves the question open: how can a build be accomplished
>> with headless Buckminster without materializing the source but checking
>> it out from SVN?
>>
>> On Sun, 21 Apr 2013 21:13:58 +0300, Sakis Kotisis
>> <sakis.kotisis@xxxxxxxx> wrote:
>>
>>> Hello,
>>>
>>> I've encountered some strange behavior with Buckminster 4.2 on Jenkins.
>>>
>>> Buckminster is provisioned from
>>> http://download.eclipse.org/tools/buckminster/headless-4.2/, with
>>> below features.
>>>
>>> Features:
>>> org.eclipse.buckminster.core.headless.feature (%featureName)
>>> org.eclipse.buckminster.pde.headless.feature (%featureName)
>>> org.eclipse.buckminster.subversive.headless.feature (%featureName)
>>> org.eclipse.buckminster.subversive.svnkit16.headless.feature
>>> (%featureName)
>>>
>>> The site.p2 action completes ok and without errors.
>>>
>>> However, no class files are generated from eclipse.build!
>>>
>>> init actor: eclipse.build[g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>> INFO: [start g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>> buckminster.component=g.o.p.c
>>> workspace.root=/var/lib/jenkins/workspace/PG
>>>
>>> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
>>>
>>> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
>>>
>>> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
>>>
>>> localhost=scm
>>> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
>>> buckminster.component.type=osgi.bundle
>>> buckminster.version=1.2.0
>>> target.nl=en_US
>>>
>>> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
>>>
>>> INFO: [end g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>>
>>> Naturally, the bundle jar does not contain any class files either.
>>>
>>> init actor:
>>> copyTargetFragments[g.o.p.c:osgi.bundle$1.2.0#target.fragments]
>>> Action g.o.p.c:osgi.bundle$1.2.0#target.fragments using 'up to date'
>>> policy ACTOR: Product is up to date
>>> Action g.o.p.c:osgi.bundle$1.2.0#bundle.jar using 'up to date' policy
>>> COUNT: Rebuild needed: File count(0) < expected(1)
>>> init actor: ant[g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>>> buildFileId=buckminster.pdetasks
>>> targets=create.bundle.jar
>>> INFO: [start g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>>> Product alias = action.output
>>> Product base = ${buckminster.output}/jar/
>>> buckminster.component=g.o.p.c
>>> workspace.root=/var/lib/jenkins/workspace/PG
>>>
>>> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
>>>
>>> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
>>>
>>> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
>>>
>>> localhost=scm
>>> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
>>> buckminster.component.type=osgi.bundle
>>> buckminster.version=1.2.0
>>> target.nl=en_US
>>>
>>> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
>>>
>>> Base: /var/lib/jenkins/workspace/PG/g.o.p.c/bin: No such file or
>>> directory
>>> INFO: [end g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>>>
>>> Could this be a bug or am i missing something?
>>>
>>>
>>>
>>
>>
>
>


--
Sakis Kotisis

Senior Software Engineer
SciGen Technologies, S.A.
Re: eclipse.build does not generate class files when using Buckminster 4.2 on Jenkins [message #1053022 is a reply to message #1052973] Thu, 02 May 2013 01:50 Go to previous message
Thomas Hallgren is currently offline Thomas Hallgren
Messages: 3215
Registered: July 2009
Senior Member
Hi Sakis,

I'm back to my original recommendation. Start with an empty workspace in
your IDE. Repeat the steps there. Its important that you do an SVN check
out that your IDE has no knowledge of!

Run your query from inside the IDE. That should result in your workspace
being populated with projects. If it doesn't, then something is wrong
and there should be a clear indication as to what that is.

As Lorenzo mentioned, using source="false" will never work for things
that you want Bucky to consider as projects.

- thomas


On 2013-05-01 18:49, Sakis Kotisis wrote:
> Thanks for the help Lorenzo.
>
> I'm pretty sure though, that this the reason the bundles are not being
> built.
> I.e. during org.eclipse.buckminster.core.commands.Build execution,
> Buckminster does not find any projects in it's workspace.
>
> I also tried with source="true" and mutable="false".
>
> I don't understand why it works with the Mail example RCP though, or in
> your case.
> Maybe by refreshing the workspace, it picks up the projects.
>
> Thomas could shed some light.
>
> In the meantime I'm trying to materialize the source from SVN with
> Buckminster.
> Let's see how this goes.
>
> On Tue, 30 Apr 2013 19:46:41 +0300, Lorenzo Bettini
> <bettini@xxxxxxxx.it> wrote:
>
>> I think that's quite the standard situation with Jenkins: the job is
>> configured to fetch/update the repository before the actual build
>> step... at least in my case, I always setup my Jenkins job like that
>> (though in my case I use git all the time).
>>
>> The rmap can be configured to read from the local file system instead of
>> svn, and, indeed, you already do that:
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <rm:rmap xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0"
>> xmlns:rm="http://www.eclipse.org/buckminster/RMap-1.0">
>> <rm:locator searchPathRef="resources"/>
>> <rm:searchPath name="resources">
>> <rm:provider componentTypes="osgi.bundle,eclipse.feature"
>> readerType="local" source="false">
>> <rm:property key="buckminster.source" value="false"/>
>> <rm:uri format="file:///{0}/{1}/">
>> <bc:propertyRef key="workspace.root" />
>> <bc:propertyRef key="buckminster.component"/>
>> </rm:uri>
>> </rm:provider>
>> </rm:searchPath>
>> </rm:rmap>
>>
>> but you need to make sure that the components can be found in
>> workspace.root which in your case is /var/lib/jenkins/workspace/PG if I
>> understand correctly, or you need to pass the correct property value for
>> workspace.root... moreover you use source to false, and also
>> buckminster.source to false...
>>
>> I usually use
>>
>> <rm:provider componentTypes="eclipse.feature,osgi.bundle,buckminster"
>> readerType="local" mutable="false">
>> <rm:property key="buckminster.mutable" value="false"/>
>>
>> I also use
>>
>> <rm:uri format="{0}/{1}">
>>
>> since the workspace.root should be already absolute...
>>
>> I don't know whether these are the problems
>>
>> On 04/30/2013 05:56 PM, Sakis Kotisis wrote:
>>> I started debugging the build process with headless Buckminster.
>>>
>>> During the org.eclipse.buckminster.core.commands.Build,
>>> wsRoot.getProjects() returns 0 projects, even after the refresh?
>>>
>>> The reason is that the SVN checkout is taking place from TortoiseSVN (or
>>> in the case of Jenkins, it's SVN client) before there is an actual
>>> workspace.
>>>
>>> Could this be the culprit? This would certainly explain why no bundle is
>>> actually being built.
>>> Buckminster import and perform isn't bothered, since it only checks
>>> paths through it's rmap.
>>>
>>> However this leaves the question open: how can a build be accomplished
>>> with headless Buckminster without materializing the source but checking
>>> it out from SVN?
>>>
>>> On Sun, 21 Apr 2013 21:13:58 +0300, Sakis Kotisis
>>> <sakis.kotisis@xxxxxxxx> wrote:
>>>
>>>> Hello,
>>>>
>>>> I've encountered some strange behavior with Buckminster 4.2 on Jenkins.
>>>>
>>>> Buckminster is provisioned from
>>>> http://download.eclipse.org/tools/buckminster/headless-4.2/, with
>>>> below features.
>>>>
>>>> Features:
>>>> org.eclipse.buckminster.core.headless.feature (%featureName)
>>>> org.eclipse.buckminster.pde.headless.feature (%featureName)
>>>> org.eclipse.buckminster.subversive.headless.feature (%featureName)
>>>> org.eclipse.buckminster.subversive.svnkit16.headless.feature
>>>> (%featureName)
>>>>
>>>> The site.p2 action completes ok and without errors.
>>>>
>>>> However, no class files are generated from eclipse.build!
>>>>
>>>> init actor: eclipse.build[g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>>> INFO: [start g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>>> buckminster.component=g.o.p.c
>>>> workspace.root=/var/lib/jenkins/workspace/PG
>>>>
>>>> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
>>>>
>>>>
>>>> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
>>>>
>>>> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
>>>>
>>>>
>>>> localhost=scm
>>>> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
>>>> buckminster.component.type=osgi.bundle
>>>> buckminster.version=1.2.0
>>>> target.nl=en_US
>>>>
>>>> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
>>>>
>>>>
>>>> INFO: [end g.o.p.c:osgi.bundle$1.2.0#eclipse.build]
>>>>
>>>> Naturally, the bundle jar does not contain any class files either.
>>>>
>>>> init actor:
>>>> copyTargetFragments[g.o.p.c:osgi.bundle$1.2.0#target.fragments]
>>>> Action g.o.p.c:osgi.bundle$1.2.0#target.fragments using 'up to date'
>>>> policy ACTOR: Product is up to date
>>>> Action g.o.p.c:osgi.bundle$1.2.0#bundle.jar using 'up to date' policy
>>>> COUNT: Rebuild needed: File count(0) < expected(1)
>>>> init actor: ant[g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>>>> buildFileId=buckminster.pdetasks
>>>> targets=create.bundle.jar
>>>> INFO: [start g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>>>> Product alias = action.output
>>>> Product base = ${buckminster.output}/jar/
>>>> buckminster.component=g.o.p.c
>>>> workspace.root=/var/lib/jenkins/workspace/PG
>>>>
>>>> buckminster.temp=/var/lib/jenkins/workspace/PG/buckminster.temp/g.o.p.c_1.2.0-osgi.bundle/temp
>>>>
>>>>
>>>> buckminster.home=/var/lib/jenkins/workspace/PG/g.o.p.c/
>>>>
>>>> buckminster.output=/var/lib/jenkins/workspace/PG/buckminster.output/g.o.p.c_1.2.0-osgi.bundle
>>>>
>>>>
>>>> localhost=scm
>>>> generator.buildTimestamp.format=2013-04-21T15:18:01.213+0000
>>>> buckminster.component.type=osgi.bundle
>>>> buckminster.version=1.2.0
>>>> target.nl=en_US
>>>>
>>>> eclipse.home=/var/lib/jenkins/tools/hudson.plugins.buckminster.BuckminsterInstallation/Buckminster_4.2/buckminster
>>>>
>>>>
>>>> Base: /var/lib/jenkins/workspace/PG/g.o.p.c/bin: No such file or
>>>> directory
>>>> INFO: [end g.o.p.c:osgi.bundle$1.2.0#bundle.jar]
>>>>
>>>> Could this be a bug or am i missing something?
>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>
>
Previous Topic: ERROR: Could not read metadata
Next Topic:CSPEC for Java and JavaScript projects?
Goto Forum:
  


Current Time: Thu Jul 31 19:46:14 EDT 2014

Powered by FUDForum. Page generated in 0.02703 seconds