Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [wtp-releng] How to make a feature available to PDE eclipse.buildscript task?

Hi David,

Thank you for the tips, advices, and offering on sanity checks. We would really appreciate your help to sanity check on the build and others once they are committed to cvs server. Currently, I am exercising the process with a dummy project on a local machine and a local cvs repository, a local webtools repository.

There are a couple documents from bugzilla and WTP website that I found to help me understanding the process. I.e., WTP Builds and WTP Releng. We are to understand how to mimic releng.wtpbuilder or use it to build jsf now. The problem I encountered is at the stage to generate scripts for JSF elements, it has not touched the build script for the plug-ins. BTW, I usually use the PDE tool to generate a first-cut script and hand-edit it afterward if it works. Still, really appreciate your tips on the PDE tool. Besides than creating a version in my local cvs to perform an integration build, I also tried nightly build. But, the same error happened, "Unable to find plug-in: org.eclipse.jsf.core_1.0.0.". The prereqs such as GEF, EMF, etc exist locally, in download, where they are fetched during build. So does the org.eclipse.releng.basebuilder. I also echo some properties, using verbose, and debug Ant settings to help me diagnosis the problem. But, have not find much for the problem I have so far. It seems access to my local cvs properly and files such as jsf feature, jsf.core plugin, and maps are copied to the workdir. BTW, thank you for the head-up on accessing cvs and network for building WTP. I also observed similar behavior and problems go away to build the second time. Thank you very much for all the suggestions and tips. But, I am not clear about the 3rd trick you mentioned here. Could you elaborate it?

Thanks,
Justin
Oracle

David M Williams wrote:


Justin, I was going to take alook at code and do a few quick sanity checks ... but I don't see it yet in Eclipse's CVS :( [I assume you just have a local cvs? If not ... there may be some other issues here!]

So, I'll descript the sanity checks. Some of these require the "releng tool" provided by Eclipse platform's releng team, which is decribed in various postings and tutorials in WTP web space.

First, have you yet tried to "PDE Tools ... create ant build file?
Sometimes, this will find funny pre-req or spelling mistakes and its
gives a getter error message than the batch build process does.
To use PDE Tools 'create', you'll need to select the feature.xml or
plugin.xml (or manifest.mf) file in the naviagor to see the menu ittem
enabled.

If the build.xml is created, the Second thing to try is to select that build.xml file and "Run as ... Ant build". I always "hide" inner tasks, and sort them. deselect what ever 'default' was and select 'clean', 'build jars' (not build update jars), zip distriution, and refresh.
(and, they have to be in that order, naturally).
Sometimes, running in this enviroment, you can get better error messages than in "batch build" process.

Third trick, did you actually "release" the code? If you do an I build, its expecting to find matching version in map file. To test that in workspace. To test that basic functionality (and that location is right), you can select map file, Team, Load Map Projects. If this works, puts released version in your workspace (not head, so you'll need to replace with
head versions if you want to make more changes.

Last problem you'll have is if your "prereqs" are correct (and present) during batch build. They are sort of automatically while working in workspace, but in batch builds, you'll see our hoops to get things like GEF and EMF "in the build" (even though we don't build them, we need them there in the right locations, etc.). Guess you'll need something similar to have WTP "pre-copied" if you are doing a "standalone" JSD build.

And there's the whole extent of my knowledge ... well ... almost .... except for a few tidbits. 1. Don't forget sometimes network or cvs doesn't work quite right and if you just run again, it would be fine (I find this frequency higher than it should be .. maybe one of of 8 times, or so). Second, you can turn on -v for ant (or -v -d) which produceds much more detail about how its reolved paths, commands, etc., so sometimes that helps see which variable its picking up wrong.

Hope these help.

David




*Justin Chen <yung-chang.chen@xxxxxxxxxx>*
Sent by: wtp-releng-bounces@xxxxxxxxxxx

10/27/2005 04:11 PM
Please respond to
yung-chang.chen and Webtools releng discussion list


	
To
	naci.dai@xxxxxxxxxxxxx
cc
	Webtools releng discussion list <wtp-releng@xxxxxxxxxxx>
Subject
Re: [wtp-releng] How to make a feature available to PDE eclipse.buildscript task?



	





Hi Naci,

First, thank you for replying.  I did build WTP locally and run tests
using releng.wtpbuilder successfully.
Thank you for refactoring the builder and it works much better.

Then, I used the releng.wtpbuilder as my base to build jsf project but
probably miss something.
Attached at the end of this email is current structure.

Tried to check typo for ids and make sure that tags are available in cvs
several times.
Must going blind somehow, somewhere.  :-(  Tried to search for the words
and google answers
but not much info available.

The areas I focused on checking were in the plug-in, feature, and map
files.
Any other areas that you think that I should take a closer look?

Thank you very much,
Justin
Oracle

-------------------- CVS structure -----------------
+ releng.wtpbuilder
   + components
      + jsf
          - build.properties                      <-- copied from jst
          - customTargets.xml                 <-- copied from jst and
modified
          - dependency.xml                     <--  copied from jst and
modified
      + ...
   + distribution
      + jsf.build
         - build.xml                                 <-- copied from
wtp.build and modified.
     + ...
  - build.properties                             <-- change
distribution to jsf
  - build.xml

+ releng
  + maps
     - jsf.map                                        <-- mimic the
other map
     - jsf-feature.map                            <-- mimic the other
map,  As you can see in the directory.txt in email earlier.

+ org.eclipse.jsf                                    <-- Mimic oher
structure but not finalize the sructure yet.  Suggestions are welcomed.
  + components
     + assembly
        + features
           + org.eclipse.jsf.feature            <-- ** Also tag as
version v20051027_1300
              - build.properties
              - feature.xml                          <-- include
plug-in, org.eclipse.jsf.core version 1.0.0, not include other features.

     + jsf
        + plugins
           + org.eclipse.jsf.core                <-- ** Also tag as
version v20051027_1740
              - plugin.xml                           <--
id=org.eclipse.jsf.core, version=1.0.0
              - ...

Naci Dai wrote:

> Justin,
>
> This usually happens when there is something wrong in the prerequsite
> chain feature includes plugin dependes on plugin etc.  Typically a
> typo, or tag wrong etc.
>
> Have you looekd at the releng.wtpbuilder.   You can try to create a
> "distribution" for jsf.  It has all the infrastructure ready to run
> builds for you...
>
>
>> Deleted the build folder and re-run the build.xml scripts seems
>> resolve previous issue and move forward a bit. But, the plugin is not
>> found now.  Any idea where should I look to resolve this? BTW, where
>> is the error log?
>>
>> Thank you in advance,
>> Justin
>> Oracle
>>
>> The followings are in the directory.txt and the versions are in my cvs.
>>
>> --------- directory.txt ---
>> feature@xxxxxxxxxxxxxxx=v20051027_1300,:pserver:ychen@ychen-pc:/CVS/WebTools,,org.eclipse.jsf/components/assembly/features/org.eclipse.jsf.feature
>>
>> !*************** jsf.map
>>
>> plugin@xxxxxxxxxxxxxxxxxxxx=v20051027_1740,:pserver:ychen@ychen-pc:/CVS/WebTools,,org.eclipse.jsf/components/jsf/plugins/org.eclipse.jsf.core
>>
>> ...
>> --------- end of directory.txt ---
>>
>> --------- error stack ---
>>     ...
>>     [java] BUILD FAILED
>>     [java]
>> E:\Projects\JSF_Build\releng.wtpbuilder\scripts\build\build.xml:28:
>> The following error occurred while executing this line:
>>     [java]
>> C:\nmd\dev\build-home\org.eclipse.releng.basebuilder\plugins\org.eclipse.pde.build_3.1.0\scripts\build.xml:23:
>> The following error occurred while executing this line:
>>     [java]
>> C:\nmd\dev\build-home\org.eclipse.releng.basebuilder\plugins\org.eclipse.pde.build_3.1.0\scripts\build.xml:63:
>> The following error occurred while executing this line:
>>     [java]
>> E:\Projects\JSF_Build\releng.wtpbuilder\components\jsf\customTargets.xml:15:
>> The following error occurred while executing this line:
>>     [java]
>> C:\nmd\dev\build-home\org.eclipse.releng.basebuilder\plugins\org.eclipse.pde.build_3.1.0\scripts\genericTargets.xml:77:
>> org.eclipse.core.runtime.CoreException: Unable to find plug-in:
>> org.eclipse.jsf.core_1.0.0. Please check the error log for more details.
>>     [java] Total time: 36 seconds
>>
>>
>>
>> Justin Chen wrote:
>>
>>> I tried to mimic current wtp build structure for our jsf project.
>>>
>>> After adding some components to my local repository, such as
>>> releng.wtpbuilder\components\jsf\*,
>>> releng.wtpbuilder\distribution\jsf.build\build.xml,
>>> releng\maps\jsf.map, releng\maps\jsf-feature.map, etc, the following
>>> is the error I ran into in Ant and not sure how to resolve this
>>> problem.
>>>
>>> BTW, the following is the content of my jsf-feature.map.
>>> feature@xxxxxxxxxxxxxxx=v20051026_1300,:pserver:ychen@ychen-pc:/CVS/WebTools,,org.eclipse.jsf/components/assembly/features/org.eclipse.jsf.feature
>>>
>>>
>>> It seems that I am hacking alone the way and not sure if this is a
>>> right approach.  Any suggestion is welcomed.
>>>
>>> Also, Thank you in advance if you have any suggestion or
>>> documentation for the problem or this task in general.
>>>
>>> Thanks again,
>>> Justin
>>> Oracle
>>>
>>> -----------------------------
>>>     ...
>>>     [java] [echo] elements=feature@xxxxxxxxxxxxxxx
>>>     [java] [echo]
>>> buildDirectory=C:/nmd/dev/build-home/build-jsf-I/workdir
>>>     [java] [echo] configInfo=*,*,*
>>>     [java] [echo]
>>> baseLocation=C:/nmd/dev/build-home/build-jsf-I/eclipse
>>>     [java] [echo] buildingOSGi=true
>>>     [java] [echo] archivesFormat=*,*,*-antZip
>>>     [java] BUILD FAILED
>>>     [java]
>>> E:\Projects\JSF_Build\releng.wtpbuilder\scripts\build\build.xml:28:
>>> The following error occurred while executing this line:
>>>     [java]
>>> C:\nmd\dev\build-home\org.eclipse.releng.basebuilder\plugins\org.eclipse.pde.build_3.1.0\scripts\build.xml:23:
>>> The following error occurred while executing this line:
>>>     [java]
>>> C:\nmd\dev\build-home\org.eclipse.releng.basebuilder\plugins\org.eclipse.pde.build_3.1.0\scripts\build.xml:63:
>>> The following error occurred while executing this line:
>>>     [java]
>>> E:\Projects\JSF_Build\releng.wtpbuilder\components\jsf\customTargets.xml:15:
>>> The following error occurred while executing this line:
>>>     [java]
>>> C:\nmd\dev\build-home\org.eclipse.releng.basebuilder\plugins\org.eclipse.pde.build_3.1.0\scripts\genericTargets.xml:77:
>>> org.eclipse.core.runtime.CoreException: Unable to find feature:
>>> org.eclipse.jsf.
>>> _______________________________________________
>>> wtp-releng mailing list
>>> wtp-releng@xxxxxxxxxxx
>>> https://dev.eclipse.org/mailman/listinfo/wtp-releng
>>
>>
>>
>>
>> _______________________________________________
>> wtp-releng mailing list
>> wtp-releng@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/wtp-releng
>>
>
>
_______________________________________________
wtp-releng mailing list
wtp-releng@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/wtp-releng

------------------------------------------------------------------------

_______________________________________________
wtp-releng mailing list
wtp-releng@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/wtp-releng


Back to the top