Hi Robert,
The buildpath entries are used (as their name imply) as inclusion and exclusion rules for the internal build mechanism. Behind the scene only buildpath entries are "counted" for the builder and so the buildParticipant are exposed to these entries as well. Although Libraries are represented in the includepath UI in Eclipse PDT it is really a buildpath matter and have a parallel entry representation (includepath AND buildpath entries). The "include path" mechanism is only a representation of the PHP includepath that is valid for the current project, hence includes the list of libraries. We have decided to hide the buildpath library page to avoid confusion among our users. Roy From: pdt-dev-boun...@eclipse.org [mailto:pdt-dev-boun...@eclipse.org] On Behalf Of Robert Gruendler Sent: Wednesday, July 01, 2009 1:21 AM To: PDT Developers Subject: Re: [pdt-dev] Handling of user libraries i've just tried the setup on a windows machine, but got the same result. When adding the library to the build path, i get the resources of the library passed to our builder, but when i add it to the include path, i only get the project's internal resources, nothing from the external library. here's how i add the extension: <extension point="org.eclipse.dltk.core.buildParticipant"> <buildParticipant class="net.sourceforge.sfdt.core.builder.SfBuildParticipantFactory" id="net.sourceforge.sfdt.core.SfBuildParticipant" name="net.sourceforge.sfdt.core.SfBuildParticipant" nature="org.eclipse.php.core.PHPNature"> </buildParticipant> </extension> is there anything i'm missing out here ? thanks ! -robert On Sun, Jun 21, 2009 at 8:55 PM, Michael Spector <spek...@gmail.com> wrote: Build Path is used for building the structured DLTK model. Include Path is an emulation of php.ini include_path entry, and it's used for resolving file network through include() statements when browsing, debugging, etc... It's obvious that Include Path is a subset of Build Path. Regarding the difference in build time... it's interesting, since there should be no difference. When you add a library to the Include Path it's automatically added to the Build Path. I'll check this... On Sun, Jun 21, 2009 at 9:44 PM, Robert Gruendler <doo...@gmail.com> wrote: Hi Michael, thanks for the tip. the library resources got passed to our builder after adding it to the buildPath, not the include path, which brings up my next question: I have tried to add our library both ways (manually, without usage of our plugin). I noticed that i get code assistance both when i add it to the include path and the build path. The only difference was that when adding it to the build path, a clean build took at least 10 times longer than a clean build with having the library in the include path. But as i've got code assistance both times, i assume that pdt must have been building a model of the library in both cases. So what exactly is the difference between "Include Path" and "Build Path" ? I guess i need to understand that concept before i can implement the model from our library ;) thanks again ! -robert Michael Spector schrieb: I guess this should work this way: 1. StandardScriptBuilder, which is also a build participant runs first (always), and builds model elements for every build path entry (verify that your library is a part of the buildpath) 2. Your build participant runs after model for all build path entries is built, so you are able to "see" all PHP elements of a project & its dependencies. On Sun, Jun 21, 2009 at 12:28 PM, Robert Gruendler <doo...@gmail.com <mailto:doo...@gmail.com>> wrote: Hi Michael, right now i just added it manually by adding it in the preferences as "User defined Library", then in the properties of the project: PHP Include Path -> Libraries -> Add Library... greetings -robert Michael Spector schrieb: Hi Robert, How do you define your included library? We don't encounter this issue in our build participant. On Sat, Jun 20, 2009 at 10:30 PM, Robert Gruendler <doo...@gmail.com <mailto:doo...@gmail.com> <mailto:doo...@gmail.com <mailto:doo...@gmail.com>>> wrote: Hi all, i'm trying to understand how included libraries are handled from a model point of view in pdt. Basically, we need some information from specific classes inside the user library, but i'm not sure at which point we can hook into pdt to build our model. I've tried to add a buildparticipant extension which uses a class that extends PHPAstVisitor. This works fine for all classes/methods etc inside the project, but i don't get anything from the included library. I assume the php model for the external libraries does not get built during the regular build process. Could anyone give me a hint at which point of the pdt plugin lifecycle the external libraries get parsed to build the model for them ? thanks! -robert _______________________________________________ pdt-dev mailing list pdt-dev@eclipse.org <mailto:pdt-dev@eclipse.org> <mailto:pdt-dev@eclipse.org <mailto:pdt-dev@eclipse.org>> https://dev.eclipse.org/mailman/listinfo/pdt-dev ------------------------------------------------------------------------ _______________________________________________ pdt-dev mailing list pdt-dev@eclipse.org <mailto:pdt-dev@eclipse.org> https://dev.eclipse.org/mailman/listinfo/pdt-dev _______________________________________________ pdt-dev mailing list pdt-dev@eclipse.org <mailto:pdt-dev@eclipse.org> https://dev.eclipse.org/mailman/listinfo/pdt-dev ------------------------------------------------------------------------ _______________________________________________ pdt-dev mailing list pdt-dev@eclipse.org https://dev.eclipse.org/mailman/listinfo/pdt-dev _______________________________________________ pdt-dev mailing list pdt-dev@eclipse.org https://dev.eclipse.org/mailman/listinfo/pdt-dev _______________________________________________ pdt-dev mailing list pdt-dev@eclipse.org https://dev.eclipse.org/mailman/listinfo/pdt-dev
_______________________________________________ pdt-dev mailing list pdt-dev@eclipse.org https://dev.eclipse.org/mailman/listinfo/pdt-dev