Community
Participate
Working Groups
Say I have two projects, P1 and P2. Let's further say that P2 depends on P1 -- that is: P2's dependencies in TS.xml explicitly list P1. P1's facet (used in my P1 build) excludes parts of the artifacts in the projects by listing those artifacts in the exclude box. I now build P1 and create a jar file. Now, P2 is built but it doesn't know that P1 was build with exclusions in the P1's facet. Because of its listed dependencies it generates code that contains import statements for artifacts (packages) that were excluded in P1's build. If I now compile my generated code for P2 I fail because import statements can't be satisfied -- the P1 jar does not include the required artifacts. Example: In P1 is have a class C1 and another class C2. I also have an association C1toC2 that is directed from C1 to C2. In P1's facet I exclude C2 and build. The jar created contains only C1. In P2 I have a class C3 that extends P1.C1. When I generate code for P2 the file for C3 (C3.java) contains an import statement P1.C2! This results (eventually) in a compile error. Enjoy, *Yoram
Facets are only associated with projects where generation is being triggered from. If you want to exclude artifacts in P1, you have to explicitly specify P1's facet in P2's tigerstripe.xml file.