Extract jelly from plugin.jelly into classpath.jelly and project.jelly
PR:MAVEN-628 git-svn-id: https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk@113741 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
138
eclipse/src/plugin-resources/templates/classpath.jelly
Normal file
138
eclipse/src/plugin-resources/templates/classpath.jelly
Normal file
@@ -0,0 +1,138 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<j:whitespace
|
||||
xmlns:j="jelly:core"
|
||||
xmlns:util="jelly:util"
|
||||
xmlns:ant="jelly:ant"
|
||||
xmlns="dummy"
|
||||
trim="true">
|
||||
|
||||
<classpath>
|
||||
<j:if test="${sourcesPresent}">
|
||||
<j:set var="srcDir" value="${pom.build.sourceDirectory}"/>
|
||||
<j:if test="${ srcDir.startsWith( basedir ) }">
|
||||
<!--ant:echo>Cutting off basedir from sourceDirectory</ant:echo-->
|
||||
<j:set var="srcDir" value="${srcDir.substring(basedir.length())}"/>
|
||||
<!--
|
||||
cut off also slash or backslash from basedir.
|
||||
Is there a way to make it in one step in Jelly?
|
||||
-->
|
||||
<j:set var="srcDir" value="${srcDir.substring(1)}"/>
|
||||
</j:if>
|
||||
<classpathentry kind="src" path="${srcDir}"/>
|
||||
</j:if>
|
||||
|
||||
<j:if test="${unitTestSourcesPresent}">
|
||||
<ant:echo>Contains JUnit tests</ant:echo>
|
||||
<j:set var="testSrcDir" value="${pom.build.unitTestSourceDirectory}"/>
|
||||
<j:if test="${ testSrcDir.startsWith( basedir ) }">
|
||||
<!--ant:echo>Cutting off basedir from testSourceDirectory</ant:echo-->
|
||||
<j:set var="testSrcDir" value="${testSrcDir.substring(basedir.length())}"/>
|
||||
<!-- cut off also slash or backslash -->
|
||||
<j:set var="testSrcDir" value="${testSrcDir.substring(1)}"/>
|
||||
</j:if>
|
||||
|
||||
<!-- Eclipse supports an output directory per input directory -->
|
||||
<j:set var="testOutputDir" value="${maven.eclipse.test.output.dir}"/>
|
||||
<j:if test="${empty testOutputDir}">
|
||||
<j:set var="testOutputDir"
|
||||
value="${pom.getPluginContext('maven-test-plugin').getVariable('maven.test.dest')}"/>
|
||||
</j:if>
|
||||
<j:if test="${ testOutputDir.startsWith( basedir ) }">
|
||||
<!--ant:echo>Cutting off basedir from testOutputDir</ant:echo-->
|
||||
<j:set var="testOutputDir" value="${testOutputDir.substring(basedir.length())}"/>
|
||||
<!--
|
||||
cut off also slash or backslash from basedir.
|
||||
Is there a way to make it in one step in Jelly?
|
||||
-->
|
||||
<j:set var="testOutputDir" value="${testOutputDir.substring(1)}"/>
|
||||
</j:if>
|
||||
|
||||
<ant:echo>Setting compile of ${testSrcDir} to ${testOutputDir}</ant:echo>
|
||||
<classpathentry kind="src" path="${testSrcDir}" output="${testOutputDir}"/>
|
||||
|
||||
<!-- Here are the rules:
|
||||
If the project has maven.eclipse.junit property, add that ver of junit
|
||||
If the project has maven.eclipse.junit property and it is empty, don't add junit
|
||||
If the project has junit dep, use that.
|
||||
Use the test plugin version
|
||||
-->
|
||||
<j:set var="verX" value="${maven.eclipse.junit}X"/>
|
||||
|
||||
<j:set var="depVersion">${pom.getPluginContext('maven-test-plugin').getVariable('plugin').getDependency('junit').getVersion()}</j:set>
|
||||
|
||||
<j:if test="${pom.getDependency('junit') != null}">
|
||||
<j:set var="depVersion" value="${pom.getDependency('junit').getVersion()}"/>
|
||||
</j:if>
|
||||
|
||||
<j:if test="${verX != 'X'}">
|
||||
<j:set var="depVersion">${maven.eclipse.junit}</j:set>
|
||||
</j:if>
|
||||
|
||||
<j:if test="${verX == 'noneX'}">
|
||||
<j:set var="depVersion" value="none"/>
|
||||
</j:if>
|
||||
|
||||
<j:if test="${depVersion != 'none'}">
|
||||
<classpathentry kind="var" path="MAVEN_REPO/junit/jars/junit-${depVersion}.jar"/>
|
||||
</j:if>
|
||||
</j:if>
|
||||
|
||||
<j:set var="cactusSrcDir"
|
||||
value="${pom.getPluginContext('maven-cactus-plugin').getVariable('cactus.src.dir')}"/>
|
||||
<util:available file="${cactusSrcDir}">
|
||||
<j:set var="cactusSourcePresent" value="true"/>
|
||||
</util:available>
|
||||
|
||||
<j:if test="${cactusSourcePresent == 'true'}">
|
||||
<ant:echo>Contains Cactus Tests!</ant:echo>
|
||||
<j:set var="testSrcDir" value="${cactusSrcDir}"/>
|
||||
<j:if test="${ testSrcDir.startsWith( basedir ) }">
|
||||
<ant:echo>Cutting off basedir from Cactus source directory</ant:echo>
|
||||
<j:set var="testSrcDir" value="${testSrcDir.substring(basedir.length())}"/>
|
||||
<!-- cut off also slash or backslash -->
|
||||
<j:set var="testSrcDir" value="${testSrcDir.substring(1)}"/>
|
||||
</j:if>
|
||||
<classpathentry kind="src" path="${testSrcDir}"/>
|
||||
|
||||
<j:set var="depVersion">${pom.getPluginContext('maven-cactus-plugin').getVariable('plugin').getDependency('cactus').getVersion()}</j:set>
|
||||
<classpathentry kind="var" path="MAVEN_REPO/cactus/jars/cactus-${depVersion}.jar"/>
|
||||
</j:if>
|
||||
|
||||
<classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" sourcepath="JRE_SRC"/>
|
||||
<j:forEach var="lib" items="${pom.artifacts}">
|
||||
<j:set var="eclipseDependency"
|
||||
value="${lib.dependency.getProperty('eclipse.dependency')}"/>
|
||||
<j:choose>
|
||||
<j:when test="${eclipseDependency == 'true'}">
|
||||
<classpathentry kind="src" path="/${lib.dependency.artifactId}"/>
|
||||
</j:when>
|
||||
<j:when test="${lib.dependency.groupId == 'junit'}">
|
||||
<!-- ignoring junit dependency as we've already created it -->
|
||||
</j:when>
|
||||
<j:otherwise>
|
||||
<classpathentry kind="var" path="MAVEN_REPO${lib.urlPath}"/>
|
||||
</j:otherwise>
|
||||
</j:choose>
|
||||
</j:forEach>
|
||||
|
||||
<!-- add the unit test build directory so that any files generated via Maven are available -->
|
||||
|
||||
<j:set var="outputDir" value="${maven.eclipse.output.dir}"/>
|
||||
<j:if test="${empty outputDir}">
|
||||
<j:set var="outputDir" value="${maven.build.dest}"/>
|
||||
</j:if>
|
||||
<j:if test="${ outputDir.startsWith( basedir ) }">
|
||||
<!--ant:echo>Cutting off basedir from outputDir</ant:echo-->
|
||||
<j:set var="outputDir" value="${outputDir.substring(basedir.length())}"/>
|
||||
<!--
|
||||
cut off also slash or backslash from basedir.
|
||||
Is there a way to make it in one step in Jelly?
|
||||
-->
|
||||
<j:set var="outputDir" value="${outputDir.substring(1)}"/>
|
||||
</j:if>
|
||||
<classpathentry kind="output" path="${outputDir}"/>
|
||||
<ant:echo>Setting default output directory to ${outputDir}</ant:echo>
|
||||
|
||||
</classpath>
|
||||
|
||||
</j:whitespace>
|
||||
33
eclipse/src/plugin-resources/templates/project.jelly
Normal file
33
eclipse/src/plugin-resources/templates/project.jelly
Normal file
@@ -0,0 +1,33 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<j:whitespace
|
||||
xmlns:j="jelly:core"
|
||||
xmlns:util="jelly:util"
|
||||
xmlns:ant="jelly:ant"
|
||||
xmlns="dummy"
|
||||
trim="true">
|
||||
|
||||
<projectDescription>
|
||||
<name>${pom.artifactId}</name>
|
||||
<comment>${pom.description}</comment>
|
||||
<projects>
|
||||
<j:forEach var="lib" items="${pom.artifacts}">
|
||||
<j:set var="eclipseDependency"
|
||||
value="${lib.dependency.getProperty('eclipse.dependency')}"/>
|
||||
<j:if test="${eclipseDependency == 'true'}">
|
||||
<project>${lib.dependency.artifactId}</project>
|
||||
</j:if>
|
||||
</j:forEach>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
||||
|
||||
</j:whitespace>
|
||||
Reference in New Issue
Block a user