removal of demoted plugins from the main plugin repository

git-svn-id: https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk@190672 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
brett committed 2005-06-15 00:29:43 +00:00
1 parent 25ffcbf759
commit 1902938d31
208 files changed
-26330

No files matched your search

-652
View File
@@ -1,652 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!-- ================================================================== -->
<!-- W E B S E R V E R P L U G I N -->
<!-- ================================================================== -->
<project xmlns:j="jelly:core" xmlns:ant="jelly:ant" xmlns:log="jelly:log"
xmlns:util="jelly:util"
xmlns:exception="http://www.maven.org/plugin/appserver/exception"
xmlns:appserver="http://www.maven.org/plugin/appserver"
xmlns:define="jelly:define" >
<!--==================================================================-->
<!-- S U P P O R T E D W E B S E R V E R S -->
<!--==================================================================-->
<j:import inherit="true" file="${plugin.resources}/tomcat-4.0.x.jelly" />
<j:import inherit="true" file="${plugin.resources}/tomcat-4.1.x.jelly" />
<j:import inherit="true" file="${plugin.resources}/orion-2.0.x.jelly" />
<!--==================================================================-->
<!-- B E G I N C O R E P R O C E S S I N G -->
<!--==================================================================-->
<!-- tell the user what Maven thinks about their appserver instance -->
<goal name="appserver:init"
description="Initialize resources needed for the plugin">
<!--
1. First check that name and version properties have values
2. Check the appserver name and version is supported by this plugin
3. Check the home dir to make sure we can find the install
4. Check the rest of the required properties
5. Check the ports to make sure they are numbers only
-->
<define:taglib uri="http://www.maven.org/plugin/appserver/exception">
<define:tag name="requiredPropertyMissing">
<ant:fail message=" ">
--------------------------------------------------------------------------
| Plugin Configuration Error |
--------------------------------------------------------------------------
A required property is missing a value.
Property name: ${propname}
Errors must be corrected before using this plugin.
--------------------------------------------------------------------------
</ant:fail>
</define:tag>
<define:tag name="invalidPropertyDirectory">
<ant:fail message=" ">
--------------------------------------------------------------------------
| Plugin Configuration Error |
--------------------------------------------------------------------------
A required property is pointing to an invalid directory.
Property name: ${propname}
Invalid value: ${propvalue}
Errors must be corrected before using this plugin.
--------------------------------------------------------------------------
</ant:fail>
</define:tag>
<define:tag name="appserverNameNotSupported">
<ant:fail message=" ">
--------------------------------------------------------------------------
| Plugin Configuration Error |
--------------------------------------------------------------------------
The specified appserver name is currently not supported.
Property name: ${propname}
Property value: ${propvalue}
For supported ${propname} values, please see the help docs.
--------------------------------------------------------------------------
</ant:fail>
</define:tag>
<define:tag name="appserverVersionNotSupported">
<ant:fail message=" ">
--------------------------------------------------------------------------
| Plugin Configuration Error |
--------------------------------------------------------------------------
The specified version for the ${appserver} appserver is currently
not supported.
Property name: ${propname}
Property value: ${propvalue}
For supported ${propname} values, please see the help docs.
--------------------------------------------------------------------------
</ant:fail>
</define:tag>
</define:taglib>
<!-- Check required properties for a name and version first -->
<j:if test="${context.getVariable('maven.appserver.name') == null}">
<exception:requiredPropertyMissing propname="maven.appserver.name" />
</j:if>
<j:if test="${context.getVariable('maven.appserver.version') == null}">
<exception:requiredPropertyMissing propname="maven.appserver.version" />
</j:if>
<!-- Check if the appserver name and version are supported -->
<j:choose>
<j:when test="${context.getVariable('maven.appserver.name') == 'tomcat'}">
<j:choose>
<j:when test="${context.getVariable('maven.appserver.version') == '4.0.x'}" />
<j:when test="${context.getVariable('maven.appserver.version') == '4.1.x'}" />
<j:otherwise>
<exception:appserverVersionNotSupported
appserver="${maven.appserver.name}"
propname="maven.appserver.version"
propvalue="${maven.appserver.version}" />
</j:otherwise>
</j:choose>
</j:when>
<j:when test="${context.getVariable('maven.appserver.name') == 'orion'}">
<j:choose>
<j:when test="${context.getVariable('maven.appserver.version') == '2.0.x'}" />
<j:otherwise>
<exception:appserverVersionNotSupported
appserver="${maven.appserver.name}"
propname="maven.appserver.version"
propvalue="${maven.appserver.version}" />
</j:otherwise>
</j:choose>
</j:when>
<j:otherwise>
<exception:appserverNameNotSupported propname="maven.appserver.name"
propvalue="${maven.appserver.name}" />
</j:otherwise>
</j:choose>
<!-- Check the home dir to see if it exists -->
<!-- hack to work around maven console caching property values -->
<j:remove var="maven.appserver.conf.dir.exists" />
<util:available file="${maven.appserver.home}">
<j:set var="maven.appserver.home.exists" value="true" />
</util:available>
<j:if test="${!context.getVariable('maven.appserver.home.exists')}">
<exception:invalidPropertyDirectory propname="maven.appserver.home"
propvalue="${maven.appserver.home}" />
</j:if>
<!-- Check the rest of the required properties -->
<j:if test="${context.getVariable('maven.appserver.dir') == null}">
<exception:requiredPropertyMissing propname="maven.appserver.dir" />
</j:if>
<j:if test="${context.getVariable('maven.appserver.test.socket') == null}">
<exception:requiredPropertyMissing propname="maven.appserver.test.socket" />
</j:if>
<j:if test="${context.getVariable('maven.appserver.root') == null}">
<exception:requiredPropertyMissing propname="maven.appserver.root" />
</j:if>
<!-- sanity check for preset variables -->
<j:choose>
<j:when test="${context.getVariable('maven.appserver.port.http') == null}">
<j:if test="${context.getVariable('maven.appserver.port.https') == null}">
<exception:requiredPropertyMissing
propname="maven.appserver.port.http OR maven.appserver.port.https" />
</j:if>
</j:when>
<j:when test="${context.getVariable('maven.appserver.port.https') == null}">
<j:if test="${context.getVariable('maven.appserver.port.http') == null}">
<exception:requiredPropertyMissing
propname="maven.appserver.port.http OR maven.appserver.port.https" />
</j:if>
</j:when>
</j:choose>
<!-- These are special cases where the user should not override -->
<j:if test="${context.getVariable('maven.appserver.fullname') == null}">
<exception:requiredPropertyMissing propname="maven.appserver.fullname" />
</j:if>
<j:remove var="maven.appserver.conf.dir.exists" />
<util:available file="${maven.appserver.conf.dir}">
<j:set var="maven.appserver.conf.dir.exists" value="true" />
</util:available>
<j:if test="${!context.getVariable('maven.appserver.conf.dir.exists')}">
<exception:invalidPropertyDirectory propname="maven.appserver.conf.dir"
propvalue="${maven.appserver.conf.dir}" />
</j:if>
<!-- convert all path related properties to their os equivalent -->
<ant:property name="maven.appserver.home.path"
location="${context.getVariable('maven.appserver.home')}" />
<ant:property name="maven.appserver.conf.dir.path"
location="${context.getVariable('maven.appserver.conf.dir')}" />
<ant:property name="maven.appserver.root.path"
location="${context.getVariable('maven.appserver.root')}" />
<ant:property name="maven.appserver.dir.path"
location="${context.getVariable('maven.appserver.dir')}" />
<!-- convert all path related properties to their os equivalent -->
<ant:property name="maven.webserver.home.path"
location="${pom.getPluginContext('maven-webserver-plugin').getVariable('maven.webserver.home')}" />
<ant:property name="maven.webserver.conf.dir.path"
location="${pom.getPluginContext('maven-webserver-plugin').getVariable('maven.webserver.conf.dir')}" />
<ant:property name="maven.webserver.root.path"
location="${pom.getPluginContext('maven-webserver-plugin').getVariable('maven.webserver.root')}" />
<ant:property name="maven.webserver.dir.path"
location="${pom.getPluginContext('maven-webserver-plugin').getVariable('maven.webserver.dir')}" />
<!-- create the filterset to be available to copy tasks that want it -->
<ant:filterset id="maven.appserver.filterset.default">
<ant:filter token="maven.appserver.home"
value="${context.getVariable('maven.appserver.home.path')}" />
<ant:filter token="maven.appserver.name"
value="${context.getVariable('maven.appserver.name')}" />
<ant:filter token="maven.appserver.version"
value="${context.getVariable('maven.appserver.version')}" />
<ant:filter token="maven.appserver.port.http"
value="${context.getVariable('maven.appserver.port.http')}" />
<ant:filter token="maven.appserver.port.https"
value="${context.getVariable('maven.appserver.port.https')}" />
<ant:filter token="maven.appserver.port.A"
value="${context.getVariable('maven.appserver.port.A')}" />
<ant:filter token="maven.appserver.port.B"
value="${context.getVariable('maven.appserver.port.B')}" />
<ant:filter token="maven.appserver.port.C"
value="${context.getVariable('maven.appserver.port.C')}" />
<ant:filter token="maven.appserver.conf.dir"
value="${context.getVariable('maven.appserver.conf.dir.path')}" />
<ant:filter token="maven.appserver.host"
value="${context.getVariable('maven.appserver.host')}" />
<ant:filter token="maven.appserver.dir"
value="${context.getVariable('maven.appserver.dir.path')}" />
<ant:filter token="maven.appserver.root"
value="${context.getVariable('maven.appserver.root.path')}" />
<!-- allow integration with the properties of the appserver plugin -->
<ant:filter token="maven.webserver.home"
value="${context.getVariable('maven.webserver.home.path')}" />
<ant:filter token="maven.webserver.name"
value="${pom.getPluginContext('maven-webserver-plugin').getVariable('maven.webserver.name')}" />
<ant:filter token="maven.webserver.version"
value="${pom.getPluginContext('maven-webserver-plugin').getVariable('maven.webserver.version')}" />
<ant:filter token="maven.webserver.port.http"
value="${pom.getPluginContext('maven-webserver-plugin').getVariable('maven.webserver.port.http')}" />
<ant:filter token="maven.webserver.port.https"
value="${pom.getPluginContext('maven-webserver-plugin').getVariable('maven.webserver.port.https')}" />
<ant:filter token="maven.webserver.port.A"
value="${pom.getPluginContext('maven-webserver-plugin').getVariable('maven.webserver.port.A')}" />
<ant:filter token="maven.webserver.port.B"
value="${pom.getPluginContext('maven-webserver-plugin').getVariable('maven.webserver.port.B')}" />
<ant:filter token="maven.webserver.port.C"
value="${pom.getPluginContext('maven-webserver-plugin').getVariable('maven.webserver.port.C')}" />
<ant:filter token="maven.webserver.conf.dir"
value="${context.getVariable('maven.webserver.conf.dir.path')}" />
<ant:filter token="maven.webserver.host"
value="${pom.getPluginContext('maven-webserver-plugin').getVariable('maven.webserver.host')}" />
<ant:filter token="maven.webserver.dir"
value="${context.getVariable('maven.webserver.dir.path')}" />
<ant:filter token="maven.webserver.root"
value="${context.getVariable('maven.webserver.root.path')}" />
</ant:filterset>
<!-- a flag to see if the appserver is started -->
<j:remove var="maven.appserver.started" />
<j:remove var="failedSocket" />
<j:set var="canHttpConnect" value="true" /><!-- default -->
<j:if test="${context.getVariable('maven.appserver.test.url') != null}">
<!-- override default true above because test url is optional -->
<j:set var="canHttpConnect" value="false" />
<!-- test url connection -->
<j:catch var="httpConnectException" >
<j:new className="java.net.URL" var="testURL" >
<j:arg type="java.lang.String"
value="${context.getVariable('maven.appserver.test.url')}" />
</j:new>
<j:invoke on="${testURL}" method="openConnection" var="testConnection"/>
<j:invoke on="${testConnection}" method="getResponseCode" var="testResponse" />
<j:if test="${testResponse gt 0 and testResponse lt 400}">
<j:set var="canHttpConnect" value="true" />
</j:if>
</j:catch>
<j:if test="${httpConnectException.getCause().getCause().toString().indexOf('MalformedURLException') ge 0}">
<exception:appserverTestURLInvalid
propname="maven.appserver.test.url"
propvalue="${context.getVariable('maven.appserver.test.url')}"
cause="${httpConnectException}"/>
</j:if>
<!-- clean up the objects to prevent leak in long sessions -->
<j:remove var="testURL" />
<j:remove var="testConnection" />
<j:remove var="testResponse" />
</j:if>
<!-- always test socket -->
<j:catch var="failedSocket">
<j:new className="java.net.Socket" var="dummy">
<j:arg type="java.lang.String"
value="${context.getVariable('maven.appserver.host')}" />
<j:arg type="int"
value="${context.getVariable('maven.appserver.test.socket')}" />
</j:new>
</j:catch>
<j:if test="${failedSocket.getCause() == null and canHttpConnect == 'true'}">
<j:set var="maven.appserver.started" value="true" />
</j:if>
<j:remove var="maven.appserver.installed" />
<util:available file="${maven.appserver.root}" >
<util:available file="${maven.appserver.dir}" >
<j:set var="maven.appserver.installed" value="true" />
</util:available>
</util:available>
<j:if test="${context.getVariable('maven.appserver.started') == 'true' and context.getVariable('maven.appserver.installed') == 'true'}">
<j:set var="maven.appserver.installedAndStarted" value="true" />
</j:if>
<j:set var="maven.appserver.installed.msg">
<j:choose>
<j:when test="${maven.appserver.installed}">installed</j:when>
<j:otherwise>not installed</j:otherwise>
</j:choose>
</j:set>
<j:set var="maven.appserver.started.msg">
<j:choose>
<j:when test="${maven.appserver.started}">started</j:when>
<j:otherwise>not started</j:otherwise>
</j:choose>
</j:set>
<j:if test="${context.getVariable('maven.appserver.test.url') != null}">
<log:info trim="false">
Maven has determined your <j:expr value="${maven.appserver.fullname}"/> appserver instance is <j:expr value="${maven.appserver.installed.msg}"/> in directory [ <j:expr value="${maven.appserver.dir}"/> ] and <j:expr value="${maven.appserver.started.msg}"/> on <j:expr value="${maven.appserver.test.url}"/>
</log:info>
</j:if>
<j:if test="${context.getVariable('maven.appserver.test.url') == null}">
<log:info trim="false">
Maven has determined your <j:expr value="${maven.appserver.fullname}"/> appserver instance is <j:expr value="${maven.appserver.installed.msg}"/> in directory [ <j:expr value="${maven.appserver.dir}"/> ] and <j:expr value="${maven.appserver.started.msg}"/> using socket <j:expr value="${maven.appserver.test.socket}"/> on host <j:expr value="${maven.appserver.host}"/>.
</log:info>
</j:if>
<!--==================================================================-->
<!-- C O R E -->
<!--==================================================================-->
<define:taglib uri="http://www.maven.org/plugin/appserver">
<!--==================================================================-->
<!-- C L E A N -->
<!--==================================================================-->
<define:tag name="clean">
<log:info trim="false">
<j:expr value="${maven.appserver.fullname}" />: Deleting appserver instance ...
</log:info>
<attainGoal session="${context.getVariable('maven.session.global', 'parent')}"
name="appserver:clean-${maven.appserver.fullname}" />
<ant:delete dir="${maven.appserver.dir}"/>
</define:tag>
<!--==================================================================-->
<!-- I N S T A L L -->
<!--==================================================================-->
<define:tag name="install">
<log:info trim="false">
<j:expr value="${maven.appserver.fullname}" />: Installing appserver instance ...
</log:info>
<attainGoal
session="${context.getVariable('maven.session.global', 'parent')}"
name="appserver:install-${maven.appserver.fullname}" />
</define:tag>
<!--==================================================================-->
<!-- R E I N S T A L L -->
<!--==================================================================-->
<define:tag name="reinstall">
<log:info trim="false">
<j:expr value="${maven.appserver.fullname}" />: Re-installing appserver instance ...
</log:info>
<attainGoal session="${context.getVariable('maven.session.global', 'parent')}"
name="appserver:reinstall-${maven.appserver.fullname}" />
</define:tag>
<!--==================================================================-->
<!-- S T A R T -->
<!--==================================================================-->
<define:tag name="start">
<log:info trim="false">
<j:expr value="${maven.appserver.fullname}" />: Starting appserver instance ...
</log:info>
<attainGoal
session="${context.getVariable('maven.session.global', 'parent')}"
name="appserver:start-${maven.appserver.fullname}" />
</define:tag>
<!--==================================================================-->
<!-- R E S T A R T -->
<!--==================================================================-->
<define:tag name="restart">
<log:info trim="false">
<j:expr value="${maven.appserver.fullname}" />: Re-starting appserver instance ...
</log:info>
<attainGoal
session="${context.getVariable('maven.session.global', 'parent')}"
name="appserver:restart-${maven.appserver.fullname}" />
</define:tag>
<!--==================================================================-->
<!-- S T O P -->
<!--==================================================================-->
<define:tag name="stop">
<log:info trim="false">
<j:expr value="${maven.appserver.fullname}" />: Stopping appserver instance ...
</log:info>
<attainGoal session="${context.getVariable('maven.session.global', 'parent')}"
name="appserver:stop-${maven.appserver.fullname}" />
</define:tag>
</define:taglib>
</goal>
<!--==================================================================-->
<!-- C Y C L E -->
<!--==================================================================-->
<goal name="appserver:cycle" prereqs="appserver:init"
description="Forced install and start of a appserver instance">
<!-- all goals will need a appserver dir -->
<ant:mkdir dir="${maven.appserver.dir}" />
<ant:mkdir dir="${maven.appserver.root}" />
<j:choose>
<!-- not installed - simply install and start-->
<j:when test="${context.getVariable('maven.appserver.installed') != 'true'}">
<appserver:install />
<appserver:start />
</j:when>
<!-- installed and stopped -->
<j:when test="${context.getVariable('maven.appserver.installed') == 'true' and context.getVariable('maven.appserver.started') != 'true'}">
<appserver:reinstall />
<appserver:start />
</j:when>
<!-- installed and started -->
<j:when test="${context.getVariable('maven.appserver.installedAndStarted') == 'true'}">
<appserver:reinstall />
<appserver:restart />
</j:when>
<!-- one of those 'things' that should never happen -->
<j:otherwise>
<ant:fail message=" ">
--------------------------------------------------------------------------
| Plugin Runtime Error |
--------------------------------------------------------------------------
Maven could not determine the current status for your <j:expr value="${maven.appserver.fullname}"/>
instance. This was an unexpected runtime error that should be reported.
--------------------------------------------------------------------------
</ant:fail>
</j:otherwise>
</j:choose>
</goal>
<!--==================================================================-->
<!-- I N S T A L L -->
<!--==================================================================-->
<goal name="appserver:install" prereqs="appserver:init"
description="Install a appserver instance">
<!-- all goals will need a appserver dir -->
<ant:mkdir dir="${maven.appserver.dir}" />
<ant:mkdir dir="${maven.appserver.root}" />
<j:choose>
<!-- not installed - simply install -->
<j:when test="${context.getVariable('maven.appserver.installed') != 'true'}">
<appserver:install />
</j:when>
<j:otherwise>
<log:warn trim="false">
Appserver could not be installed because it is already installed. Trying to
reinstall the appserver instead ...
</log:warn>
<appserver:reinstall />
</j:otherwise>
</j:choose>
</goal>
<!--==================================================================-->
<!-- R E I N S T A L L -->
<!--==================================================================-->
<!-- the purpose of this target is to allow the user to be very -->
<!-- specific when using pre and post goals and sometimes there may -->
<!-- be custom implementations of reinstall needed -->
<!-- by default we just call the install goal again -->
<goal name="appserver:reinstall"
prereqs="appserver:init" description="Reinstall a appserver instance" >
<j:choose>
<j:when test="${context.getVariable('maven.appserver.installed') != 'true'}">
<log:warn trim="false">
Appserver could not be reinstalled because it is not yet installed. Trying to
install the appserver instead ...
</log:warn>
<appserver:install />
</j:when>
<j:otherwise>
<appserver:reinstall />
</j:otherwise>
</j:choose>
</goal>
<!--==================================================================-->
<!-- S T A R T -->
<!--==================================================================-->
<goal name="appserver:start" prereqs="appserver:init"
description="Start a appserver instance">
<j:choose>
<j:when test="${context.getVariable('maven.appserver.installed') != 'true'}">
<ant:echo message=" ">
--------------------------------------------------------------------------
| Plugin Warning |
--------------------------------------------------------------------------
Appserver not yet installed
You may try
o appserver:install appserver:start
o appserver:cycle
--------------------------------------------------------------------------
</ant:echo>
</j:when>
<j:when test="${context.getVariable('maven.appserver.started') == 'true'}">
<log:warn trim="false">
Appserver could not be started because it is already started. Trying to restart
the appserver instead ...
</log:warn>
<appserver:restart />
</j:when>
<j:when test="${context.getVariable('maven.appserver.installed') == 'true'}">
<appserver:start />
</j:when>
</j:choose>
</goal>
<!--==================================================================-->
<!-- R E S T A R T -->
<!--==================================================================-->
<!-- the purpose of this target is to allow the user to be very -->
<!-- specific when using pre and post goals -->
<goal name="appserver:restart"
prereqs="appserver:init"
description="Restart a appserver instance">
<j:choose>
<j:when test="${context.getVariable('maven.appserver.started') == 'true'}">
<appserver:restart />
</j:when>
<j:otherwise>
<log:warn trim="false">
Appserver could not be restarted because it is not yet started. Trying to start
the appserver ...
</log:warn>
<appserver:start />
</j:otherwise>
</j:choose>
</goal>
<!--==================================================================-->
<!-- S T O P -->
<!--==================================================================-->
<goal name="appserver:stop" prereqs="appserver:init"
description="Stop a appserver instance">
<j:choose>
<j:when test="${context.getVariable('maven.appserver.installedAndStarted') == 'true'}">
<appserver:stop />
</j:when>
<j:otherwise>
<log:warn trim="false">
Appserver already stopped!
</log:warn>
</j:otherwise>
</j:choose>
</goal>
<!--==================================================================-->
<!-- C L E A N -->
<!--==================================================================-->
<goal name="appserver:clean" prereqs="appserver:init"
description="Safely delete an installed appserver instance">
<j:choose>
<!-- started and installed -->
<j:when test="${context.getVariable('maven.appserver.installedAndStarted') == 'true'}">
<appserver:stop />
<appserver:clean />
</j:when>
<!-- installed not started -->
<j:when test="${context.getVariable('maven.appserver.installed') == 'true'}">
<appserver:clean />
</j:when>
<!-- already cleaned -->
<j:otherwise>
<log:warn trim="false">
Appserver already cleaned!
</log:warn>
</j:otherwise>
</j:choose>
</goal>
</project>
-122
View File
@@ -1,122 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
############################################################################
# W E B S E R V E R
#---------------------------------------------------------------------------
#-------------------------------------------------------#
# OPTIONAL PROPERTIES TO BE SET BY PLUGIN CONSUMER #
#-------------------------------------------------------#
#
# ports to access and configure this server instance
#
maven.appserver.port.http=80
maven.appserver.port.https=443
#
# optional ports for other work
#
# maven.appserver.port.A=
# maven.appserver.port.B=
# maven.appserver.port.C=
#
# The host name, used when configuring, defaults to localhost
#
maven.appserver.host=localhost
#
#RMI port, Admin Username, and Admin Password used for orion support
#
maven.appserver.rmi.port=
maven.appserver.adminusername=admin
maven.appserver.adminpassword=admin
#-------------------------------------------------------#
#-------------------------------------------------------#
# REQUIRED PROPERTIES THAT MAY/MUST BE SET BY USER #
#-------------------------------------------------------#
#
# a supported name of an application server instance to install
#
# maven.appserver.name=tomcat
#
# version number of the application server
#
# maven.appserver.version=4.x
#
# The place where the binary machine install of the web server resides
#
# maven.appserver.home=/apps/apache2
#
# The directory to install the local instance of the server
#
maven.appserver.dir=${basedir}/server
#
# The default port to test for a TCP/IP connection listener for determining if
# the appserver instance is started. Default is the same as the http port
#
maven.appserver.test.socket=${maven.appserver.port.http}
#
# The URL used to test the current running status of the appserver
# Default is left as null, so that only the socket is used to test if the server
# is started
#
# maven.appserver.test.url=http://${maven.appserver.host}:${maven.appserver.port.http}/index.html
#
# The root directory out of which you will server will serve your documents
# The default is under webapps, to allow this appserver to play friendly
# with a Tomcat application container by default
#
maven.appserver.root=${maven.appserver.dir}/webapps/ROOT
#-------------------------------------------------------#
#-------------------------------------------------------#
# REQUIRED PROPERTIES NOT NORMALLY MODIFIED BY USERS #
#-------------------------------------------------------#
# needed for dir searches and messages, should NOT be changed by user
maven.appserver.fullname=${maven.appserver.name}-${maven.appserver.version}
#
# where to look for the instance specific config files for this appserver
#
maven.appserver.conf.dir=${maven.conf.dir}/appserver/${maven.appserver.fullname}
#-------------------------------------------------------#
# DEBUG REQUIRED PROPERTIES #
#-------------------------------------------------------#
maven.appserver.debug=false
maven.appserver.debug.transport=dt_socket
maven.appserver.debug.address=8000
maven.appserver.debug.server=y
maven.appserver.debug.suspend=n
-19
View File
@@ -1,19 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# -------------------------------------------------------------------
# P R O J E C T P R O P E R T I E S
# -------------------------------------------------------------------
-84
View File
@@ -1,84 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project>
<extend>../plugin-parent/project.xml</extend>
<pomVersion>3</pomVersion>
<id>maven-appserver-plugin</id>
<name>Maven Appserver Plugin</name>
<currentVersion>2.1-SNAPSHOT</currentVersion>
<description/>
<shortDescription>A Maven plugin that can be used to install and control a J2EE application server instance.</shortDescription>
<url>http://maven.apache.org/reference/plugins/appserver/</url>
<siteDirectory>/www/maven.apache.org/reference/plugins/appserver/</siteDirectory>
<issueTrackingUrl>http://jira.codehaus.org/browse/MPAPPSERVER</issueTrackingUrl>
<repository>
<connection>scm:svn:http://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/appserver/</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/appserver/</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/maven/maven-1/plugins/trunk/appserver/</url>
</repository>
<versions>
<version>
<id>2.0</id>
<name>2.0</name>
<tag>MAVEN_APPSERVER_2_0</tag>
</version>
</versions>
<developers>
<developer>
<name>Peter Lynch</name>
<id>plynch</id>
<email>plynch at apache dot org</email>
<organization/>
<roles>
<role>Architect</role>
<role>Java Developer</role>
</roles>
</developer>
<developer>
<name>Stéphane Mor</name>
<id>smor</id>
<email>stephanemor@yahoo.fr</email>
<organization>Hasgard Systèmes et Réseaux</organization>
<roles>
<role>Java Developer</role>
</roles>
</developer>
<developer>
<name>Jason van Zyl</name>
<id>jvanzyl</id>
<email>jason@zenplex.com</email>
<organization>Zenplex</organization>
<roles>
<role>Release Manager</role>
</roles>
</developer>
</developers>
<dependencies>
<dependency>
<groupId>ant</groupId>
<artifactId>ant</artifactId>
<version>1.5.3-1</version>
</dependency>
<dependency>
<groupId>commons-jelly</groupId>
<artifactId>commons-jelly-tags-log</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
</project>
-92
View File
@@ -1,92 +0,0 @@
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!--
========================================================================
E N H Y D R A 3.1
========================================================================
-->
<!--
========================================================================
Install and configure Enhydra 3.1 instance
========================================================================
-->
<target name="install-enhydra-31">
<!-- Create common directories and copy configuration files -->
<mkdir dir="${maven.appserver.dir}/conf"/>
<mkdir dir="${maven.appserver.dir}/work"/>
<mkdir dir="${maven.appserver.dir}/webapps"/>
<!-- copy any user configuration files w/ filtering by forcing copy -->
<!-- expecting at least multiserver.conf -->
<copy todir="${maven.appserver.dir}/conf" overwrite="true" >
<fileset dir="${maven.conf.dir}/enhydra31" excludes="**/web.xml"/>
<filterset refid="maven.appserver.filterset" />
</copy>
<!-- Note: Enhydra 3.1 does not support automatic war deployment -->
<!-- so any war files will have to be unwared -->
</target>
<!--
========================================================================
Start Enhydra 3.1
========================================================================
-->
<target name="start-enhydra-31">
<java classname="org.apache.cactus.ant.EnhydraRun" fork="yes">
<arg value="-start"/>
<arg value="${maven.appserver.dir}/conf/multiserver.conf"/>
<classpath>
<fileset dir="${maven.appserver.home}/lib">
<include name="enhydra.jar"/>
<include name="admin.jar"/>
</fileset>
<pathelement location="${cactus.ant.jar}"/>
<pathelement location="${java.home}/../lib/tools.jar"/>
</classpath>
</java>
</target>
<!--
========================================================================
Stop Enhydra 3.1
========================================================================
-->
<target name="stop-enhydra-31">
<java classname="org.apache.cactus.ant.EnhydraRun" fork="yes">
<arg value="-stop"/>
<classpath>
<fileset dir="${maven.appserver.home}/lib">
<include name="enhydra.jar"/>
<include name="admin.jar"/>
</fileset>
<pathelement location="${cactus.ant.jar}"/>
<pathelement location="${java.home}/../lib/tools.jar"/>
</classpath>
</java>
</target>
-60
View File
@@ -1,60 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!-- files included here imply that the build files support j2ee12 -->
<!-- <!DOCTYPE project [
<!ENTITY build-j2ee-share SYSTEM "file:./build-j2ee-share.xml">
<!ENTITY build-resin-20 SYSTEM "file:./build-resin-20.xml">
<!ENTITY build-resin-12 SYSTEM "file:./build-resin-12.xml">
<!ENTITY build-orion-14 SYSTEM "file:./build-orion-14.xml">
<!ENTITY build-orion-15 SYSTEM "file:./build-orion-15.xml">
<!ENTITY build-tomcat-32 SYSTEM "file:./build-tomcat-32.xml">
<!ENTITY build-tomcat-33 SYSTEM "file:./build-tomcat-33.xml">
<!ENTITY build-weblogic-51 SYSTEM "file:./build-weblogic-51.xml">
<!ENTITY build-enhydra-31 SYSTEM "file:./build-enhydra-31.xml">
<!ENTITY build-weblogic-61 SYSTEM "file:./build-weblogic-61.xml">
]> -->
<!--
&build-resin-20;
&build-resin-12;
&build-orion-14;
&build-orion-15;
&build-tomcat-32;
&build-tomcat-33;
&build-weblogic-51;
&build-enhydra-31;
&build-weblogic-61;
-->
<!DOCTYPE project [
<!ENTITY build-j2ee-share SYSTEM "file:./build-j2ee-share.xml">
<!ENTITY build-tomcat-40 SYSTEM "file:./build-tomcat-40.xml">
]>
<project name="Application Server Control for Servlet API 2.2" default="init"
basedir=".">
&build-j2ee-share;
&build-tomcat-40;
</project>
-52
View File
@@ -1,52 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!-- files included here imply that the build files support j2ee13 -->
<!--<!ENTITY build-resin-20 SYSTEM "file:./build-resin-20.xml">
<!ENTITY build-resin-13 SYSTEM "file:./build-resin-13.xml">
<!ENTITY build-orion-14 SYSTEM "file:./build-orion-14.xml">
<!ENTITY build-orion-15 SYSTEM "file:./build-orion-15.xml">
<!ENTITY build-weblogic-61 SYSTEM "file:./build-weblogic-61.xml">
&build-resin-20;
&build-resin-13;
&build-orion-14;
&build-orion-15;
&build-weblogic-61;
-->
<!DOCTYPE project [
<!ENTITY build-j2ee-share SYSTEM "file:./build-j2ee-share.xml">
<!ENTITY build-tomcat-40 SYSTEM "file:./build-tomcat-40.xml">
]>
<!--
=============================================================================
Build file for installing and controlling aplication server instances
using Servlet API 2.3 - J2EE13
-->
<project name="Application Server Installs for Servlet API 2.3" default="init"
basedir=".">
&build-j2ee-share;
&build-tomcat-40;
</project>
-52
View File
@@ -1,52 +0,0 @@
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!--
========================================================================
The filterset used when configuring files for the appserver
========================================================================
-->
<filterset id="maven.appserver.filterset">
<!-- filters must be explicitly listed from properties instead of file -->
<!-- this is due to the user may have overridden these properties and -->
<!-- the fact that properties can't be expanded from a filtersfile -->
<!-- for the user to add more filter tokens, they should use a callback -->
<filter token="maven.appserver.name" value="${maven.appserver.name}" />
<filter token="maven.appserver.version" value="${maven.appserver.name}" />
<filter token="maven.appserver.home" value="${maven.appserver.home}" />
<filter token="maven.appserver.dir" value="${maven.appserver.dir}" />
<filter token="maven.appserver.host" value="${maven.appserver.host}" />
<filter token="maven.appserver.url" value="${maven.appserver.url}" />
<filter token="maven.appserver.port.http" value="${maven.appserver.port.http}" />
<filter token="maven.appserver.port.https" value="${maven.appserver.port.https}" />
<filter token="maven.appserver.port.one" value="${maven.appserver.port.one}" />
<filter token="maven.appserver.port.two" value="${maven.appserver.port.two}" />
<filter token="maven.appserver.port.three" value="${maven.appserver.port.three}" />
<filter token="maven.appserver.classpath" value="${maven.appserver.classpath}" />
</filterset>
<!--
========================================================================
Initialize the build. Must be called by all targets
========================================================================
-->
<target name="init">
<tstamp/>
</target>
-123
View File
@@ -1,123 +0,0 @@
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!--
========================================================================
Run Orion 1.4 tests
========================================================================
-->
<target name="test.orion.14" depends="prepare.test.orion.14"
if="maven.appserver.home" description="Run tests on Orion 1.4">
<!-- Start the servlet engine, wait for it to be started, run the
unit tests, stop the servlet engine, wait for it to be stopped.
The servlet engine is stopped if the tests fail for any reason -->
<runservertests testURL="http://localhost:${test.port}/test"
startTarget="start.orion.14"
stopTarget="stop.orion.14"
testTarget="test"/>
</target>
<!--
========================================================================
Start Orion 1.4
========================================================================
-->
<target name="start.orion.14">
<java classname="com.evermind.server.ApplicationServer" fork="yes">
<arg value="-config"/>
<arg value="${maven.appserver.dir}/conf/server.xml"/>
<classpath>
<fileset dir="${maven.appserver.home}">
<include name="*.jar"/>
</fileset>
</classpath>
</java>
</target>
<!--
========================================================================
Stop Orion 1.4
========================================================================
-->
<target name="stop.orion.14">
<java classname="com.evermind.client.orion.OrionConsoleAdmin" fork="yes">
<arg value="ormi://localhost:23791/"/>
<arg value="admin"/>
<arg value="password"/>
<arg value="-shutdown"/>
<classpath>
<fileset dir="${maven.appserver.home}">
<include name="*.jar"/>
</fileset>
</classpath>
</java>
</target>
<!--
========================================================================
Display a warning message if the needed servlet engine home property
is not set
========================================================================
-->
<target name="check.test.orion.14" unless="maven.appserver.home">
<echo message=""/>
<echo message="******************************************************"/>
<echo message="WARNING : The 'maven.appserver.home' property has not been"/>
<echo message="set. No test will be run on that servlet engine."/>
<echo message="******************************************************"/>
<echo message=""/>
</target>
<!--
========================================================================
Prepare directories and variables for running the tests
========================================================================
-->
<target name="prepare.test.orion.14"
depends="check.test.orion.14,testwar" if="maven.appserver.home">
<echo message="maven.appserver.home = ${maven.appserver.home}"/>
<property name="maven.appserver.dir" value="${target.test.dir}/orion14"/>
<property name="conf.orion14.dir" value="${conf.test.dir}/orion14"/>
<!-- Create work and conf directories and copy configuration files -->
<mkdir dir="${maven.appserver.dir}"/>
<mkdir dir="${maven.appserver.dir}/conf"/>
<!-- Orion need to have a /persistence directory created, otherwise
it throws an error -->
<mkdir dir="${maven.appserver.dir}/persistence"/>
<copy todir="${maven.appserver.dir}/conf" filtering="on">
<fileset dir="${conf.orion14.dir}"/>
</copy>
<!-- Copy the war file -->
<copy file="${target.test.dir}/test.war"
tofile="${maven.appserver.dir}/test.war"/>
</target>
-124
View File
@@ -1,124 +0,0 @@
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!--
========================================================================
Run Orion 1.5 tests
========================================================================
-->
<target name="test.orion.15" depends="prepare.test.orion.15"
if="maven.appserver.home" description="Run tests on Orion 1.5">
<!-- Start the servlet engine, wait for it to be started, run the
unit tests, stop the servlet engine, wait for it to be stopped.
The servlet engine is stopped if the tests fail for any reason -->
<runservertests testURL="http://localhost:${test.port}/test"
startTarget="start.orion.15"
stopTarget="stop.orion.15"
testTarget="test"/>
</target>
<!--
========================================================================
Start Orion 1.5
========================================================================
-->
<target name="start.orion.15">
<java classname="com.evermind.server.ApplicationServer" fork="yes">
<arg value="-config"/>
<arg value="${maven.appserver.dir}/conf/server.xml"/>
<classpath>
<fileset dir="${maven.appserver.home}">
<include name="*.jar"/>
</fileset>
</classpath>
</java>
</target>
<!--
========================================================================
Stop Orion 1.5
========================================================================
-->
<target name="stop.orion.15">
<java classname="com.evermind.client.orion.OrionConsoleAdmin"
fork="yes">
<arg value="ormi://localhost:23791/"/>
<arg value="admin"/>
<arg value="password"/>
<arg value="-shutdown"/>
<classpath>
<fileset dir="${maven.appserver.home}">
<include name="*.jar"/>
</fileset>
</classpath>
</java>
</target>
<!--
========================================================================
Display a warning message if the needed servlet engine home property
is not set
========================================================================
-->
<target name="check.test.orion.15" unless="maven.appserver.home">
<echo message=""/>
<echo message="******************************************************"/>
<echo message="WARNING : The 'maven.appserver.home' property has not been"/>
<echo message="set. No test will be run on that servlet engine."/>
<echo message="******************************************************"/>
<echo message=""/>
</target>
<!--
========================================================================
Prepare directories and variables for running the tests
========================================================================
-->
<target name="prepare.test.orion.15"
depends="check.test.orion.15,testwar" if="maven.appserver.home">
<echo message="maven.appserver.home = ${maven.appserver.home}"/>
<property name="maven.appserver.dir" value="${target.test.dir}/orion15"/>
<property name="conf.orion15.dir" value="${conf.test.dir}/orion15"/>
<!-- Create work and conf directories and copy configuration files -->
<mkdir dir="${maven.appserver.dir}"/>
<mkdir dir="${maven.appserver.dir}/conf"/>
<!-- Orion need to have a /persistence directory created, otherwise
it throws an error -->
<mkdir dir="${maven.appserver.dir}/persistence"/>
<copy todir="${maven.appserver.dir}/conf" filtering="on">
<fileset dir="${conf.orion15.dir}"/>
</copy>
<!-- Copy the war file -->
<copy file="${target.test.dir}/test.war"
tofile="${maven.appserver.dir}/test.war"/>
</target>
-128
View File
@@ -1,128 +0,0 @@
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!--
========================================================================
Run Resin 1.2 tests
========================================================================
-->
<target name="test.resin.12" depends="prepare.test.resin.12"
if="maven.appserver.home" description="Run tests on Resin 1.2">
<!-- Start the servlet engine, wait for it to be started, run the
unit tests, stop the servlet engine, wait for it to be stopped.
The servlet engine is stopped if the tests fail for any reason -->
<runservertests testURL="http://localhost:${test.port}/test"
startTarget="start.resin.12"
stopTarget="stop.resin.12"
testTarget="test"/>
</target>
<!--
========================================================================
Start Resin 1.2
========================================================================
-->
<target name="start.resin.12">
<java classname="org.apache.cactus.ant.ResinRun" fork="yes">
<arg value="-start"/>
<arg value="-conf"/>
<arg value="resin.conf"/>
<!-- Needed so that Resin use the maven.appserver.home variable as it's
root directory for resolving file paths -->
<jvmarg value="-Dresin.home=${maven.appserver.dir}"/>
<classpath>
<pathelement location="${cactus.ant.jar}"/>
<fileset dir="${maven.appserver.home}/lib">
<include name="*.jar"/>
</fileset>
</classpath>
</java>
</target>
<!--
========================================================================
Stop Resin 1.2
========================================================================
-->
<target name="stop.resin.12">
<java classname="org.apache.cactus.ant.ResinRun" fork="yes">
<arg value="-stop"/>
<classpath>
<pathelement location="${cactus.ant.jar}"/>
<fileset dir="${maven.appserver.home}/lib">
<include name="*.jar"/>
</fileset>
</classpath>
</java>
</target>
<!--
========================================================================
Display a warning message if the needed servlet engine home property
is not set
========================================================================
-->
<target name="check.test.resin.12" unless="maven.appserver.home">
<echo message=""/>
<echo message="******************************************************"/>
<echo message="WARNING : The 'maven.appserver.home' property has not been "/>
<echo message="set. No test will be run on that servlet engine."/>
<echo message="******************************************************"/>
<echo message=""/>
</target>
<!--
========================================================================
Prepare directories and variables for running the tests
========================================================================
-->
<target name="prepare.test.resin.12"
depends="check.test.resin.12,testwar" if="maven.appserver.home">
<echo message="maven.appserver.home = ${maven.appserver.home}"/>
<property name="maven.appserver.dir" value="${target.test.dir}/resin12"/>
<property name="conf.resin12.dir" value="${conf.test.dir}/resin12"/>
<mkdir dir="${maven.appserver.dir}"/>
<!-- Copy resin configuration files -->
<copy file="${conf.resin12.dir}/resin.conf"
tofile="${maven.appserver.dir}/resin.conf" filtering="on"/>
<!-- Create the war file -->
<copy file="${target.test.dir}/test.war"
tofile="${maven.appserver.dir}/test.war"/>
</target>
-128
View File
@@ -1,128 +0,0 @@
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!--
========================================================================
Run Resin 1.3 tests
========================================================================
-->
<target name="test.resin.13" depends="prepare.test.resin.13"
if="maven.appserver.home" description="Run tests on Resin 1.3">
<!-- Start the servlet engine, wait for it to be started, run the
unit tests, stop the servlet engine, wait for it to be stopped.
The servlet engine is stopped if the tests fail for any reason -->
<runservertests testURL="http://localhost:${test.port}/test"
startTarget="start.resin.13"
stopTarget="stop.resin.13"
testTarget="test"/>
</target>
<!--
========================================================================
Start Resin 1.3
========================================================================
-->
<target name="start.resin.13">
<java classname="org.apache.cactus.ant.ResinRun" fork="yes">
<arg value="-start"/>
<arg value="-conf"/>
<arg value="resin.conf"/>
<!-- Needed so that Resin use the maven.appserver.home variable as it's
root directory for resolving file paths -->
<jvmarg value="-Dresin.home=${maven.appserver.dir}"/>
<classpath>
<pathelement location="${cactus.ant.jar}"/>
<fileset dir="${maven.appserver.home}/lib">
<include name="*.jar"/>
</fileset>
</classpath>
</java>
</target>
<!--
========================================================================
Stop Resin 1.3
========================================================================
-->
<target name="stop.resin.13">
<java classname="org.apache.cactus.ant.ResinRun" fork="yes">
<arg value="-stop"/>
<classpath>
<pathelement location="${cactus.ant.jar}"/>
<fileset dir="${maven.appserver.home}/lib">
<include name="*.jar"/>
</fileset>
</classpath>
</java>
</target>
<!--
========================================================================
Display a warning message if the needed servlet engine home property
is not set
========================================================================
-->
<target name="check.test.resin.13" unless="maven.appserver.home">
<echo message=""/>
<echo message="******************************************************"/>
<echo message="WARNING : The 'maven.appserver.home' property has not been "/>
<echo message="set. No test will be run on that servlet engine."/>
<echo message="******************************************************"/>
<echo message=""/>
</target>
<!--
========================================================================
Prepare directories and variables for running the tests
========================================================================
-->
<target name="prepare.test.resin.13"
depends="check.test.resin.13,testwar" if="maven.appserver.home">
<echo message="maven.appserver.home = ${maven.appserver.home}"/>
<property name="maven.appserver.dir" value="${target.test.dir}/resin13"/>
<property name="conf.resin13.dir" value="${conf.test.dir}/resin13"/>
<mkdir dir="${maven.appserver.dir}"/>
<!-- Copy resin configuration files -->
<copy file="${conf.resin13.dir}/resin.conf"
tofile="${maven.appserver.dir}/resin.conf" filtering="on"/>
<!-- Create the war file -->
<copy file="${target.test.dir}/test.war"
tofile="${maven.appserver.dir}/test.war"/>
</target>
-129
View File
@@ -1,129 +0,0 @@
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!--
========================================================================
Run Resin 2.0 tests
========================================================================
-->
<target name="test.resin.20" depends="prepare.test.resin.20"
if="maven.appserver.home" description="Run tests on Resin 2.0">
<!-- Start the servlet engine, wait for it to be started, run the
unit tests, stop the servlet engine, wait for it to be stopped.
The servlet engine is stopped if the tests fail for any reason -->
<runservertests testURL="http://localhost:${test.port}/test"
startTarget="start.resin.20"
stopTarget="stop.resin.20"
testTarget="test"/>
</target>
<!--
========================================================================
Start Resin 2.0
========================================================================
-->
<target name="start.resin.20">
<java classname="org.apache.cactus.ant.ResinRun" fork="yes">
<arg value="-start"/>
<arg value="-conf"/>
<arg value="resin.conf"/>
<!-- Needed so that Resin use the maven.appserver.home variable as it's
root directory for resolving file paths -->
<jvmarg value="-Dresin.home=${maven.appserver.dir}"/>
<classpath>
<pathelement location="${cactus.ant.jar}"/>
<fileset dir="${maven.appserver.home}/lib">
<include name="*.jar"/>
</fileset>
</classpath>
</java>
</target>
<!--
========================================================================
Stop Resin 2.0
========================================================================
-->
<target name="stop.resin.20">
<java classname="org.apache.cactus.ant.ResinRun" fork="yes">
<arg value="-stop"/>
<classpath>
<pathelement location="${cactus.ant.jar}"/>
<fileset dir="${maven.appserver.home}/lib">
<include name="*.jar"/>
</fileset>
</classpath>
</java>
</target>
<!--
========================================================================
Display a warning message if the needed servlet engine home property
is not set
========================================================================
-->
<target name="check.test.resin.20" unless="maven.appserver.home">
<echo message=""/>
<echo message="******************************************************"/>
<echo message="WARNING : The 'maven.appserver.home' property has not been"/>
<echo message="set. No test will be run on that servlet engine."/>
<echo message="******************************************************"/>
<echo message=""/>
</target>
<!--
========================================================================
Prepare directories and variables for running the tests
========================================================================
-->
<target name="prepare.test.resin.20"
depends="check.test.resin.20,testwar" if="maven.appserver.home">
<echo message="maven.appserver.home = ${maven.appserver.home}"/>
<property name="maven.appserver.dir" value="${target.test.dir}/resin20"/>
<property name="conf.resin20.dir" value="${conf.test.dir}/resin20"/>
<mkdir dir="${maven.appserver.dir}"/>
<!-- Copy resin configuration files -->
<copy file="${conf.resin20.dir}/resin.conf"
tofile="${maven.appserver.dir}/resin.conf" filtering="on"/>
<!-- Create the war file -->
<copy file="${target.test.dir}/test.war"
tofile="${maven.appserver.dir}/test.war"/>
</target>
-134
View File
@@ -1,134 +0,0 @@
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!--
========================================================================
Run Tomcat 3.2 tests
========================================================================
-->
<target name="test.tomcat.32" depends="prepare.test.tomcat.32"
if="maven.appserver.home" description="Run tests on Tomcat 3.2">
<!-- Start the servlet engine, wait for it to be started, run the
unit tests, stop the servlet engine, wait for it to be stopped.
The servlet engine is stopped if the tests fail for any reason -->
<runservertests testURL="http://localhost:${test.port}/test"
startTarget="start.tomcat.32"
stopTarget="stop.tomcat.32"
testTarget="test"/>
</target>
<!--
========================================================================
Start Tomcat 3.2
========================================================================
-->
<target name="start.tomcat.32">
<java classname="org.apache.tomcat.startup.Tomcat" fork="yes">
<arg value="-config"/>
<arg value="${maven.appserver.dir}/conf/server.xml"/>
<classpath>
<pathelement location="${java.home}/../lib/tools.jar"/>
<fileset dir="${maven.appserver.home}/lib">
<include name="*.jar"/>
</fileset>
</classpath>
</java>
</target>
<!--
========================================================================
Stop Tomcat 3.2
========================================================================
-->
<target name="stop.tomcat.32">
<java classname="org.apache.tomcat.startup.Tomcat" fork="yes">
<jvmarg value="-Dtomcat.home=${maven.appserver.home}"/>
<arg value="-stop"/>
<arg value="-config"/>
<arg value="${maven.appserver.dir}/conf/server.xml"/>
<classpath>
<pathelement location="${java.home}/../lib/tools.jar"/>
<fileset dir="${maven.appserver.home}/lib">
<include name="*.jar"/>
</fileset>
</classpath>
</java>
</target>
<!--
========================================================================
Display a warning message if the needed servlet engine home property
is not set
========================================================================
-->
<target name="check.test.tomcat.32" unless="maven.appserver.home">
<echo message=""/>
<echo message="******************************************************"/>
<echo message="WARNING : The 'maven.appserver.home' property has not been "/>
<echo message="set. No test will be run on that servlet engine."/>
<echo message="******************************************************"/>
<echo message=""/>
</target>
<!--
========================================================================
Prepare directories and variables for running the tests
========================================================================
-->
<target name="prepare.test.tomcat.32"
depends="check.test.tomcat.32,testwar" if="maven.appserver.home">
<echo message="maven.appserver.home = ${maven.appserver.home}"/>
<property name="maven.appserver.dir"
value="${target.test.dir}/tomcat32"/>
<property name="conf.tomcat32.dir" value="${conf.test.dir}/tomcat32"/>
<filter token="maven.appserver.dir" value="${maven.appserver.dir}"/>
<!-- Create work and conf directories and copy configuration files -->
<mkdir dir="${maven.appserver.dir}/conf"/>
<mkdir dir="${maven.appserver.dir}/work"/>
<mkdir dir="${maven.appserver.dir}/webapps"/>
<!-- Delete some config file so that they will be copied every time -->
<delete file="${maven.appserver.dir}/conf/testserver.xml"/>
<!-- Delete the expanded war so that the new one is picked up -->
<delete dir="${maven.appserver.dir}/webapps"/>
<!-- Copy the default tomcat web.xml to our test conf/ directory.
This is needed otherwise tomcat does not start -->
<copy file="${maven.appserver.home}/conf/web.xml"
tofile="${maven.appserver.dir}/conf/web.xml"/>
<copy file="${conf.tomcat32.dir}/server.xml"
tofile="${maven.appserver.dir}/conf/server.xml" filtering="on"/>
<!-- Copy the war file -->
<copy file="${target.test.dir}/test.war"
tofile="${maven.appserver.dir}/webapps/test.war"/>
</target>
-127
View File
@@ -1,127 +0,0 @@
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!--
========================================================================
Run Tomcat 3.3 tests
========================================================================
-->
<target name="test.tomcat.33" depends="prepare.test.tomcat.33"
if="maven.appserver.home" description="Run tests on Tomcat 3.3">
<!-- Start the servlet engine, wait for it to be started, run the
unit tests, stop the servlet engine, wait for it to be stopped.
The servlet engine is stopped if the tests fail for any reason -->
<runservertests testURL="http://localhost:${test.port}/test"
startTarget="start.tomcat.33"
stopTarget="stop.tomcat.33"
testTarget="test"/>
</target>
<!--
========================================================================
Start Tomcat 3.3
========================================================================
-->
<target name="start.tomcat.33">
<java classname="org.apache.tomcat.startup.Main" fork="yes">
<jvmarg value="-Dtomcat.home=${target.tomcat33.full.dir}"/>
<jvmarg value="-Dtomcat.install=${maven.appserver.home}"/>
<arg value="start"/>
<classpath>
<fileset dir="${maven.appserver.home}/lib">
<include name="tomcat.jar"/>
</fileset>
</classpath>
</java>
</target>
<!--
========================================================================
Stop Tomcat 3.3
========================================================================
-->
<target name="stop.tomcat.33">
<java classname="org.apache.tomcat.startup.Main" fork="yes">
<jvmarg value="-Dtomcat.home=${target.tomcat33.full.dir}"/>
<jvmarg value="-Dtomcat.install=${maven.appserver.home}"/>
<arg value="stop"/>
<classpath>
<fileset dir="${maven.appserver.home}/lib">
<include name="tomcat.jar"/>
</fileset>
</classpath>
</java>
</target>
<!--
========================================================================
Display a warning message if the needed servlet engine home property
is not set
========================================================================
-->
<target name="check.test.tomcat.33" unless="maven.appserver.home">
<echo message=""/>
<echo message="******************************************************"/>
<echo message="WARNING : The 'maven.appserver.home' property has not been "/>
<echo message="set. No test will be run on that servlet engine."/>
<echo message="******************************************************"/>
<echo message=""/>
</target>
<!--
========================================================================
Prepare directories and variables for running the tests
========================================================================
-->
<target name="prepare.test.tomcat.33"
depends="check.test.tomcat.33,testwar" if="maven.appserver.home">
<echo message="maven.appserver.home = ${maven.appserver.home}"/>
<property name="maven.appserver.dir"
value="${target.test.dir}/tomcat33"/>
<property name="conf.tomcat33.dir" value="${conf.test.dir}/tomcat33"/>
<property name="target.tomcat33.full.dir"
value="${basedir}/${maven.appserver.dir}"/>
<filter token="maven.appserver.dir" value="${maven.appserver.dir}"/>
<!-- Delete everything -->
<delete dir="${maven.appserver.dir}/webapps"/>
<!-- Create work and conf directories and copy configuration files -->
<mkdir dir="${maven.appserver.dir}/conf"/>
<mkdir dir="${maven.appserver.dir}/work"/>
<mkdir dir="${maven.appserver.dir}/webapps"/>
<copy todir="${maven.appserver.dir}/conf" filtering="on">
<fileset dir="${conf.tomcat33.dir}"/>
</copy>
<!-- Copy the war file -->
<copy file="${target.test.dir}/test.war"
tofile="${maven.appserver.dir}/webapps/test.war"/>
</target>
-142
View File
@@ -1,142 +0,0 @@
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!--
========================================================================
Run WebLogic 5.1 tests
========================================================================
-->
<target name="test.weblogic.51" depends="prepare.test.weblogic.51"
if="maven.appserver.home" description="Run tests on WebLogic 5.1">
<!-- Start the servlet engine, wait for it to be started, run the
unit tests, stop the servlet engine, wait for it to be stopped.
The servlet engine is stopped if the tests fail for any reason -->
<runservertests testURL="http://localhost:${test.port}/test"
startTarget="start.weblogic.51"
stopTarget="stop.weblogic.51"
testTarget="test"/>
</target>
<!--
========================================================================
Start WebLogic 5.1
========================================================================
-->
<target name="start.weblogic.51">
<java classname="weblogic.Server" fork="yes">
<classpath>
<pathelement location="${maven.appserver.home}/lib/weblogic510sp8boot.jar"/>
<pathelement location="${maven.appserver.home}/classes/boot"/>
</classpath>
<jvmarg value="-ms64m"/>
<jvmarg value="-mx64m"/>
<jvmarg value="-Dweblogic.class.path=${maven.appserver.home}/lib/weblogic510sp8.jar;${maven.appserver.home}/license;${maven.appserver.home}/classes;${maven.appserver.home}/lib/weblogicaux.jar"/>
<jvmarg value="-Dweblogic.home=${maven.appserver.dir}"/>
<jvmarg value="-Dweblogic.system.home=${maven.appserver.dir}"/>
<jvmarg value="-Dweblogic.system.name=testinstance"/>
<jvmarg value="-Djava.security.manager"/>
<jvmarg value="-Djava.security.policy==${conf.weblogic51.dir}/weblogic.policy"/>
</java>
</target>
<!--
========================================================================
Stop WebLogic 5.1
========================================================================
-->
<target name="stop.weblogic.51">
<java classname="weblogic.Admin" fork="yes">
<classpath>
<pathelement location="${maven.appserver.home}/lib/weblogic510sp8.jar"/>
<pathelement location="${maven.appserver.home}/license"/>
<pathelement location="${maven.appserver.home}/classes"/>
<pathelement location="${maven.appserver.home}/lib/weblogicaux.jar"/>
</classpath>
<arg value="t3://localhost:${test.port}/test"/>
<arg value="SHUTDOWN"/>
<arg value="system"/>
<arg value="password"/>
</java>
</target>
<!--
========================================================================
Display a warning message if the needed servlet engine home property
is not set
========================================================================
-->
<target name="check.test.weblogic.51" unless="maven.appserver.home">
<echo message=""/>
<echo message="******************************************************"/>
<echo message="WARNING : The 'maven.appserver.home' property has not been"/>
<echo message="set. No test will be run on that servlet engine."/>
<echo message="******************************************************"/>
<echo message=""/>
</target>
<!--
========================================================================
Prepare directories and variables for running the tests
========================================================================
-->
<target name="prepare.test.weblogic.51"
depends="check.test.weblogic.51,testwar" if="maven.appserver.home">
<echo message="maven.appserver.home = ${maven.appserver.home}"/>
<property name="maven.appserver.dir"
value="${target.test.dir}/weblogic51"/>
<property name="conf.weblogic51.dir"
value="${conf.test.dir}/weblogic51"/>
<filter token="target.wlinstance.dir"
value="${maven.appserver.dir}/testinstance"/>
<mkdir dir="${maven.appserver.dir}/testinstance"/>
<!-- Delete some config file so that they will be copied every time -->
<delete file="${maven.appserver.dir}/weblogic.properties"/>
<copy file="${conf.weblogic51.dir}/weblogic.properties"
tofile="${maven.appserver.dir}/weblogic.properties"
filtering="on"/>
<!-- Copy the war file -->
<copy file="${target.test.dir}/test.war"
tofile="${maven.appserver.dir}/testinstance/test.war"/>
<!-- This is needed here because WebLogic 5.1 does not support
automatic war deployment (except with latest Service Packs and
even when it does there are issues with support files -->
<unwar src="${maven.appserver.dir}/testinstance/test.war"
dest="${maven.appserver.dir}/testinstance/test"/>
</target>
-137
View File
@@ -1,137 +0,0 @@
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!--
========================================================================
Run WebLogic 6.1 tests
========================================================================
-->
<target name="test.weblogic.61" depends="prepare.test.weblogic.61"
if="maven.appserver.home" description="Run tests on WebLogic 6.1">
<!-- Start the servlet engine, wait for it to be started, run the
unit tests, stop the servlet engine, wait for it to be stopped.
The servlet engine is stopped if the tests fail for any reason -->
<runservertests
testURL="http://localhost:${test.port}/test/ServletRedirector?Cactus_Service=RUN_TEST"
startTarget="start.weblogic.61"
stopTarget="stop.weblogic.61"
testTarget="test"/>
</target>
<!--
========================================================================
Start WebLogic 6.1
========================================================================
-->
<target name="start.weblogic.61">
<java classname="weblogic.Server" fork="yes"
dir="${maven.appserver.dir}">
<classpath>
<pathelement location="${maven.appserver.home}/wlserver6.1/lib/weblogic.sp.jar"/>
<pathelement location="${maven.appserver.home}/wlserver6.1/lib/weblogic.jar"/>
</classpath>
<jvmarg value="-hotspot"/>
<jvmarg value="-ms64m"/>
<jvmarg value="-mx64m"/>
<jvmarg value="-Djava.library.path=${java.library.path};${maven.appserver.home}/wlserver6.1/bin"/>
<jvmarg value="-Dweblogic.RootDirectory=."/>
<jvmarg value="-Dweblogic.Domain=testdomain"/>
<jvmarg value="-Dweblogic.Name=testserver"/>
<jvmarg value="-Dbea.home=${maven.appserver.home}"/>
<jvmarg value="-Dweblogic.management.password=password"/>
<jvmarg value="-Djava.security.policy==./lib/weblogic.policy"/>
</java>
</target>
<!--
========================================================================
Stop WebLogic 6.1
========================================================================
-->
<target name="stop.weblogic.61">
<java classname="weblogic.Admin" fork="yes">
<classpath>
<pathelement location="${maven.appserver.home}/wlserver6.1/lib/weblogic.sp.jar"/>
<pathelement location="${maven.appserver.home}/wlserver6.1/lib/weblogic.jar"/>
</classpath>
<arg line="-url t3://localhost:${test.port}"/>
<arg line="-username system"/>
<arg line="-password password"/>
<arg value="SHUTDOWN"/>
</java>
</target>
<!--
========================================================================
Display a warning message if the needed servlet engine home property
is not set
========================================================================
-->
<target name="check.test.weblogic.61" unless="maven.appserver.home">
<echo message=""/>
<echo message="******************************************************"/>
<echo message="WARNING : The 'maven.appserver.home' property has not been"/>
<echo message="set. No test will be run on that servlet engine."/>
<echo message="******************************************************"/>
<echo message=""/>
</target>
<!--
========================================================================
Prepare directories and variables for running the tests
========================================================================
-->
<target name="prepare.test.weblogic.61"
depends="check.test.weblogic.61,testwar" if="maven.appserver.home">
<echo message="maven.appserver.home = ${maven.appserver.home}"/>
<property name="maven.appserver.dir"
value="${target.test.dir}/weblogic61"/>
<property name="conf.weblogic61.dir"
value="${conf.test.dir}/weblogic61"/>
<mkdir dir="${maven.appserver.dir}/config/testdomain/applications"/>
<!-- Copy WL 6.1 configuration files -->
<copy file="${conf.weblogic61.dir}/config.xml"
todir="${maven.appserver.dir}/config/testdomain" filtering="on"/>
<copy file="${conf.weblogic61.dir}/fileRealm.properties"
todir="${maven.appserver.dir}/config/testdomain"/>
<copy file="${conf.weblogic61.dir}/SerializedSystemIni.dat"
todir="${maven.appserver.dir}/config/testdomain"/>
<!-- Copy the war file -->
<copy file="${target.test.dir}/test.war"
todir="${maven.appserver.dir}/config/testdomain/applications"/>
</target>
@@ -1,209 +0,0 @@
<?xml version="1.0"?>
<project xmlns:j="jelly:core" xmlns:log="jelly:log" xmlns:ant="jelly:ant"
xmlns:orion202="http://www.maven.org/plugin/appserver/orion202"
xmlns:define="jelly:define" >
<goal name="appserver:orion-2.0.x-reqs"
description="Intialize resources for tomcat processing">
<!-- Check if user has http.conf in a conf dir -->
<ant:available file="${maven.appserver.conf.dir}/config/server.xml"
type="file" property="maven.appserver.orion202.has.conf.server" value="true" />
<ant:fail unless="maven.appserver.orion202.has.conf.server">
To use this appserver, you must have a project specific
configuration file at the following location:
${maven.appserver.conf.dir}/config/server.xml
</ant:fail>
<ant:available file="${maven.appserver.conf.dir}/config/application.xml"
type="file" property="maven.appserver.orion202.has.conf.application" value="true" />
<ant:fail unless="maven.appserver.orion202.has.conf.application">
To use this appserver, you must have a project specific
configuration file at the following location:
${maven.appserver.conf.dir}/config/application.xml
</ant:fail>
<ant:available file="${maven.appserver.conf.dir}/config/data-sources.xml"
type="file" property="maven.appserver.orion202.has.conf.datasources" value="true" />
<ant:fail unless="maven.appserver.orion202.has.conf.datasources">
To use this appserver, you must have a project specific
configuration file at the following location:
${maven.appserver.conf.dir}/config/data-sources.xml
</ant:fail>
<ant:available file="${maven.appserver.conf.dir}/config/global-web-application.xml"
type="file" property="maven.appserver.orion202.has.conf.global" value="true" />
<ant:fail unless="maven.appserver.orion202.has.conf.global">
To use this appserver, you must have a project specific
configuration file at the following location:
${maven.appserver.conf.dir}/config/global-web-application.xml
</ant:fail>
<ant:available file="${maven.appserver.conf.dir}/config/jms.xml"
type="file" property="maven.appserver.orion202.has.conf.jms" value="true" />
<ant:fail unless="maven.appserver.orion202.has.conf.jms">
To use this appserver, you must have a project specific
configuration file at the following location:
${maven.appserver.conf.dir}/config/jms.xml
</ant:fail>
<ant:available file="${maven.appserver.conf.dir}/config/mime.types"
type="file" property="maven.appserver.orion202.has.conf.mime" value="true" />
<ant:fail unless="maven.appserver.orion202.has.conf.mime">
To use this appserver, you must have a project specific
configuration file at the following location:
${maven.appserver.conf.dir}/config/mime.types
</ant:fail>
<ant:available file="${maven.appserver.conf.dir}/config/principals.xml"
type="file" property="maven.appserver.orion202.has.conf.principals" value="true" />
<ant:fail unless="maven.appserver.orion202.has.conf.principals">
To use this appserver, you must have a project specific
configuration file at the following location:
${maven.appserver.conf.dir}/config/principals.xml
</ant:fail>
<ant:available file="${maven.appserver.conf.dir}/config/rmi.xml"
type="file" property="maven.appserver.orion202.has.conf.rmi" value="true" />
<ant:fail unless="maven.appserver.orion202.has.conf.rmi">
To use this appserver, you must have a project specific
configuration file at the following location:
${maven.appserver.conf.dir}/config/rmi.xml
</ant:fail>
<ant:available file="${maven.appserver.conf.dir}/lib/hsqldb.jar"
type="file" property="maven.appserver.orion202.has.conf.hsqldb" value="true" />
<ant:fail unless="maven.appserver.orion202.has.conf.hsqldb">
To use this appserver, you must have a project specific
library file at the following location:
${maven.appserver.conf.dir}/lib/hsqldb.jar
</ant:fail>
<define:taglib uri="http://www.maven.org/plugin/appserver/orion202">
<!-- accept the force property with a value of true or false -->
<define:tag name="install">
<j:if test="${force == 'false'}">
<!-- Create common directories and copy configuration files -->
<mkdir dir="${maven.appserver.dir}/config"/>
<mkdir dir="${maven.appserver.dir}/applications"/>
<mkdir dir="${maven.appserver.dir}/database"/>
<mkdir dir="${maven.appserver.dir}/lib"/>
<mkdir dir="${maven.appserver.dir}/log"/>
<mkdir dir="${maven.appserver.dir}/persistence"/>
</j:if>
<!-- copy any user configuration files w/ filtering by forcing copy -->
<!-- if reinstall -->
<ant:copy todir="${maven.appserver.dir}" overwrite="${force}">
<ant:fileset dir="${maven.appserver.conf.dir}" />
</ant:copy>
</define:tag>
</define:taglib>
</goal>
<!--==================================================================-->
<!-- R E I N S T A L L -->
<!--==================================================================-->
<goal name="appserver:reinstall-orion-2.0.x"
prereqs="appserver:orion-2.0.x-reqs" description="Reinstall orion 2.0.x">
<orion202:install force="true"/>
</goal>
<!--==================================================================-->
<!-- I N S T A L L -->
<!--==================================================================-->
<goal name="appserver:install-orion-2.0.x" prereqs="appserver:orion-2.0.x-reqs"
description="Install orion 2.0.x">
<orion202:install force="false"/>
</goal>
<!--==================================================================-->
<!-- S T A R T -->
<!--==================================================================-->
<goal name="appserver:start-orion-2.0.x" prereqs="appserver:orion-2.0.x-reqs"
description="Start orion 2.0.x" >
<java jar="${maven.appserver.home}/orion.jar" fork="yes"
dir="${maven.appserver.dir}">
<classpath>
<!--<pathelement path="${maven.appserver.classpath}"/>-->
<fileset dir="${maven.appserver.home}">
<include name="*.jar"/>
</fileset>
</classpath>
</java>
</goal>
<!--==================================================================-->
<!-- R E S T A R T -->
<!--==================================================================-->
<goal name="appserver:restart-orion-2.0.x" description="Restart orion 2.0.x"
prereqs="appserver:orion-2.0.x-reqs" >
<java jar="${maven.appserver.home}/admin.jar" fork="yes"
dir="${maven.appserver.dir}">
<arg value="ormi://${maven.appserver.host}:${maven.appserver.rmi.port}" />
<arg value="${maven.appserver.adminusername}" />
<arg value="${maven.appserver.adminpassword}" />
<arg value="-restart"/>
<classpath>
<pathelement location="${maven.appserver.home}/orion.jar" />
<pathelement location="${maven.appserver.home}/ejb.jar" />
<pathelement location="${maven.appserver.home}/jndi.jar" />
</classpath>
</java>
</goal>
<!--==================================================================-->
<!-- S T O P -->
<!--==================================================================-->
<goal name="appserver:stop-orion-2.0.x" description="Stop orion 2.0.x"
prereqs="appserver:orion-2.0.x-reqs" >
<java jar="${maven.appserver.home}/admin.jar" fork="yes"
dir="${maven.appserver.dir}">
<arg value="ormi://${maven.appserver.host}:${maven.appserver.rmi.port}" />
<arg value="${maven.appserver.adminusername}" />
<arg value="${maven.appserver.adminpassword}" />
<arg value="-shutdown"/>
<classpath>
<pathelement location="${maven.appserver.home}/orion.jar" />
<pathelement location="${maven.appserver.home}/ejb.jar" />
<pathelement location="${maven.appserver.home}/jndi.jar" />
</classpath>
</java>
</goal>
<!--==================================================================-->
<!-- C L E A N -->
<!--==================================================================-->
<goal name="appserver:clean-orion-2.0.x" description="Clean orion 2.0.x"
prereqs="appserver:orion-2.0.x-reqs" >
<ant:delete dir="${maven.appserver.dir}"/>
<ant:mkdir dir="${maven.appserver.dir}"/>
</goal>
</project>
@@ -1,138 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project xmlns:j="jelly:core" xmlns:log="jelly:log" xmlns:ant="jelly:ant"
xmlns:tomcat4x="http://www.maven.org/plugin/appserver/tomcat4x"
xmlns:define="jelly:define" >
<goal name="appserver:tomcat-4.0.x-reqs"
description="Intialize resources for tomcat processing">
<!-- Check if user has http.conf in a conf dir -->
<ant:available file="${maven.appserver.conf.dir}/conf/server.xml"
type="file" property="maven.appserver.tomcat4x.has.conf" value="true" />
<ant:fail unless="maven.appserver.tomcat4x.has.conf">
To use this appserver, you must have a project specific
configuration file at the following location:
${maven.appserver.conf.dir}/conf/server.xml
</ant:fail>
<define:taglib uri="http://www.maven.org/plugin/appserver/tomcat4x">
<!-- accept the force property with a value of true or false -->
<define:tag name="install">
<j:if test="${force == 'false'}">
<!-- Create common directories and copy configuration files -->
<mkdir dir="${maven.appserver.dir}/conf"/>
<mkdir dir="${maven.appserver.dir}/work"/>
<mkdir dir="${maven.appserver.dir}/temp"/>
<mkdir dir="${maven.appserver.dir}/webapps"/>
<mkdir dir="${maven.appserver.dir}/logs"/>
</j:if>
<!-- copy any user configuration files w/ filtering by forcing copy -->
<!-- if reinstall -->
<ant:copy todir="${maven.appserver.dir}" overwrite="${force}">
<ant:fileset dir="${maven.appserver.conf.dir}" />
<ant:filterset refid="maven.appserver.filterset.default" />
</ant:copy>
</define:tag>
</define:taglib>
</goal>
<!--==================================================================-->
<!-- R E I N S T A L L -->
<!--==================================================================-->
<goal name="appserver:reinstall-tomcat-4.0.x"
prereqs="appserver:tomcat-4.0.x-reqs" description="Reinstall Tomcat 4.0.x">
<tomcat4x:install force="true"/>
</goal>
<!--==================================================================-->
<!-- I N S T A L L -->
<!--==================================================================-->
<goal name="appserver:install-tomcat-4.0.x" prereqs="appserver:tomcat-4.0.x-reqs"
description="Install Tomcat 4.0.x">
<tomcat4x:install force="false"/>
</goal>
<!--==================================================================-->
<!-- S T A R T -->
<!--==================================================================-->
<goal name="appserver:start-tomcat-4.0.x" prereqs="appserver:tomcat-4.0.x-reqs"
description="Start Tomcat 4.0.x" >
<java classname="org.apache.catalina.startup.Bootstrap" fork="yes"
dir="${maven.appserver.dir}">
<classpath>
<pathelement path="${maven.appserver.classpath}"/>
<fileset dir="${maven.appserver.home}">
<include name="bin/bootstrap.jar"/>
</fileset>
</classpath>
<jvmarg value="-Dcatalina.base=${maven.appserver.dir}"/>
<jvmarg value="-Dcatalina.home=${maven.appserver.home}"/>
<arg value="start"/>
</java>
</goal>
<!--==================================================================-->
<!-- R E S T A R T -->
<!--==================================================================-->
<goal name="appserver:restart-tomcat-4.0.x" description="Restart Tomcat 4.0.x"
prereqs="appserver:tomcat-4.0.x-reqs" >
<ant:fail message="Not yet supported." />
</goal>
<!--==================================================================-->
<!-- S T O P -->
<!--==================================================================-->
<goal name="appserver:stop-tomcat-4.0.x" description="Stop Tomcat 4.0.x"
prereqs="appserver:tomcat-4.0.x-reqs" >
<java classname="org.apache.catalina.startup.Bootstrap" fork="yes"
dir="${maven.appserver.dir}">
<classpath>
<pathelement path="${maven.appserver.classpath}"/>
<fileset dir="${maven.appserver.home}">
<include name="bin/bootstrap.jar"/>
</fileset>
</classpath>
<jvmarg value="-Dcatalina.base=${maven.appserver.dir}"/>
<jvmarg value="-Dcatalina.home=${maven.appserver.home}"/>
<arg value="stop"/>
</java>
</goal>
<!--==================================================================-->
<!-- C L E A N -->
<!--==================================================================-->
<goal name="appserver:clean-tomcat-4.0.x" description="Clean Tomcat 4.0.x"
prereqs="appserver:tomcat-4.0.x-reqs" >
</goal>
</project>
@@ -1,142 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project xmlns:j="jelly:core" xmlns:log="jelly:log" xmlns:ant="jelly:ant"
xmlns:tomcat41x="http://www.maven.org/plugin/appserver/tomcat41x"
xmlns:define="jelly:define" >
<goal name="appserver:tomcat-4.1.x-reqs"
description="Intialize resources for tomcat processing">
<!-- Check if user has http.conf in a conf dir -->
<ant:available file="${maven.appserver.conf.dir}/conf/server.xml"
type="file" property="maven.appserver.tomcat41x.has.conf" value="true" />
<ant:fail unless="maven.appserver.tomcat41x.has.conf">
To use this appserver, you must have a project specific
configuration file at the following location:
${maven.appserver.conf.dir}/conf/server.xml
</ant:fail>
<define:taglib uri="http://www.maven.org/plugin/appserver/tomcat41x">
<!-- accept the force property with a value of true or false -->
<define:tag name="install">
<j:if test="${force == 'false'}">
<!-- Create common directories and copy configuration files -->
<mkdir dir="${maven.appserver.dir}/conf"/>
<mkdir dir="${maven.appserver.dir}/work"/>
<mkdir dir="${maven.appserver.dir}/temp"/>
<mkdir dir="${maven.appserver.dir}/webapps"/>
<mkdir dir="${maven.appserver.dir}/logs"/>
</j:if>
<!-- copy any user configuration files w/ filtering by forcing copy -->
<!-- if reinstall -->
<ant:copy todir="${maven.appserver.dir}" overwrite="${force}">
<ant:fileset dir="${maven.appserver.conf.dir}" />
<ant:filterset refid="maven.appserver.filterset.default" />
</ant:copy>
</define:tag>
</define:taglib>
</goal>
<!--==================================================================-->
<!-- R E I N S T A L L -->
<!--==================================================================-->
<goal name="appserver:reinstall-tomcat-4.1.x"
prereqs="appserver:tomcat-4.1.x-reqs" description="Reinstall Tomcat 4.1.x">
<tomcat41x:install force="true"/>
</goal>
<!--==================================================================-->
<!-- I N S T A L L -->
<!--==================================================================-->
<goal name="appserver:install-tomcat-4.1.x" prereqs="appserver:tomcat-4.1.x-reqs"
description="Install Tomcat 4.1.x">
<tomcat41x:install force="false"/>
</goal>
<!--==================================================================-->
<!-- S T A R T -->
<!--==================================================================-->
<goal name="appserver:start-tomcat-4.1.x" prereqs="appserver:tomcat-4.1.x-reqs"
description="Start Tomcat 4.1.x" >
<java classname="org.apache.catalina.startup.Bootstrap" fork="yes"
dir="${maven.appserver.dir}">
<classpath>
<pathelement path="${maven.appserver.classpath}"/>
<fileset dir="${maven.appserver.home}">
<include name="bin/bootstrap.jar"/>
</fileset>
</classpath>
<jvmarg value="-Dcatalina.base=${maven.appserver.dir}"/>
<jvmarg value="-Dcatalina.home=${maven.appserver.home}"/>
<j:if test="${maven.appserver.debug}">
<jvmarg value="-Xdebug"/>
<jvmarg value="-Xrunjdwp:transport=${maven.appserver.debug.transport},address=${maven.appserver.debug.address},server=${maven.appserver.debug.server},suspend=${maven.appserver.debug.suspend}"/>
</j:if>
<arg value="start"/>
</java>
</goal>
<!--==================================================================-->
<!-- R E S T A R T -->
<!--==================================================================-->
<goal name="appserver:restart-tomcat-4.1.x" description="Restart Tomcat 4.1.x"
prereqs="appserver:tomcat-4.1.x-reqs" >
<ant:fail message="Not yet supported." />
</goal>
<!--==================================================================-->
<!-- S T O P -->
<!--==================================================================-->
<goal name="appserver:stop-tomcat-4.1.x" description="Stop Tomcat 4.1.x"
prereqs="appserver:tomcat-4.1.x-reqs" >
<java classname="org.apache.catalina.startup.Bootstrap" fork="yes"
dir="${maven.appserver.dir}">
<classpath>
<pathelement path="${maven.appserver.classpath}"/>
<fileset dir="${maven.appserver.home}">
<include name="bin/bootstrap.jar"/>
</fileset>
</classpath>
<jvmarg value="-Dcatalina.base=${maven.appserver.dir}"/>
<jvmarg value="-Dcatalina.home=${maven.appserver.home}"/>
<arg value="stop"/>
</java>
</goal>
<!--==================================================================-->
<!-- C L E A N -->
<!--==================================================================-->
<goal name="appserver:clean-tomcat-4.1.x" description="Clean Tomcat 4.1.x"
prereqs="appserver:tomcat-4.1.x-reqs" >
</goal>
</project>
-141
View File
@@ -1,141 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<author email="plynch@apache.org">Peter Lynch</author>
<title>Maven J2EE Plug-in: Appserver Notes</title>
</properties>
<body>
<section name="Maven J2EE Appserver Control">
<p>
This page offers some general information about the appserver control
features of the J2EE plug-in. Specific details about
<a href="./goals.html#maven:appserver-install">related targets</a> and
their <a href="./properties.html#Application Server" >properties</a> can be found elsewhere.
</p>
</section>
<section name="Plug-in Rationale">
<p>
When developing a web application (or website for that matter), each developer
working on the project needs to have an environment to run and test their
application. Rather than store a complete application server install in source
control, it is much more feasible to have a centralized install of that
application server. Then, using only the minimum configuration files the
developer can control a separate isolated instance of the application server
on their machine.
</p>
<p>
The Maven J2EE plug-in appserver features use this technique to install and control
application server instances for your project needs. The appserver
features <strong>are not</strong> for
deploying webapps or war files into application servers.
</p>
</section>
<section name="Supported Servers">
<p>
The following table shows the various appserver versions that are
supported by the appserver control features of the Maven J2EE plug-in
and what propety values are required to be set in order for the
maven:appserver-* targets to work with those versions.
</p>
<table>
<tr>
<th>Server</th>
<th>${maven.appserver.name}</th>
<th>${maven.appserver.version}</th>
<th>${maven.j2ee.version}</th>
</tr>
<tr>
<td><a href="http://jakarta.apache.org/tomcat">Tomcat 4.x</a></td>
<td><code>tomcat</code></td>
<td><code>40</code></td>
<td><code>12</code> or <code>13</code></td>
</tr>
<tr>
<td><a href="http://www.orionserver.com">Orion 2.0.x</a></td>
<td><code>orion</code></td>
<td><code>2.0.x</code></td>
</tr>
</table>
<p>The following application servers are expected to be supported soon:</p>
<ul>
<li><a href="http://enhydra.enhydra.org/">Enhydra</a></li>
<li><a href="http://www.caucho.com/products/resin/">Resin</a></li>
<li><a href="http://www.weblogic.com/">Weblogic</a></li>
</ul>
</section>
<section name="Appserver Proxy Build File">
<p>
To make life even easier when using the appserver targets, the Maven J2EE
plug-in includes a proxy build file. This means a file similar to the one
below is copied to the directory specified by
<a href="./properties.html#maven.appserver.dir">${maven.appserver.dir}</a>.
</p>
<table><tr><th>${maven.appserver.dir}/build.xml</th></tr></table>
<source><![CDATA[
<?xml version="1.0"?>
<project name="Maven Application Server Plugin Proxy" default="install"
basedir="@basedir@">
<!-- ================================================================== -->
<!-- Proxy for controlling an installed application server instance -->
<!-- ================================================================== -->
<!-- ========================================================== -->
<!-- Give user a chance to override without editing this file -->
<!-- (and without typing -D each time they compile) -->
<!-- ========================================================== -->
<!-- all ant projects specific properties -->
<property file="${user.home}/build.properties" />
<!-- project/user specific settings -->
<property file="@basedir@/build.properties" />
<!-- anything here is expected to be project defaults -->
<property file="@basedir@/project.properties" />
<!-- ========================================================== -->
<target name="install">
<ant antfile="${maven.home}/plugins/j2ee/build.xml"
target="appserver-install" />
</target>
<target name="start">
<ant antfile="${maven.home}/plugins/j2ee/build.xml"
target="appserver-start" />
</target>
<target name="stop">
<ant antfile="${maven.home}/plugins/j2ee/build.xml"
target="appserver-stop" />
</target>
</project>]]>
</source>
<p>Using this build file, you can run the appserver related targets quickly
from within your ${maven.appserver.dir} directory. Typing simply</p>
<source><![CDATA[ant]]></source>
<p>can stop, re-install, and re-start a started server instance.</p>
</section>
</body>
</document>
-42
View File
@@ -1,42 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Changes</title>
<author email="dion@multitask.com.au">dIon Gillard</author>
</properties>
<body>
<release version="2.1-SNAPSHOT" date="in CVS">
<action dev="brett" type="add" issue="MPAPPSERVER-4" due-to="Matt Smith">Add Orion 2.0.x support</action>
<action dev="plynch" type="add" issue="MPAPPSERVER-5" due-to="Guillaume Lasnier">Add server debugging support to Tomcat 4.1.x</action>
<action dev="plynch" type="fix" issue="MPAPPSERVER-7" due-to="Peter Lynch">Make runtime appserver properties play nice with console after
multiple goal invocations</action>
</release>
<release version="2.0" date="2004-03-07"></release>
<release version="1.1" date="Unknown">
<action dev="dion" type="fix">Updated docs so that they referred to the current release and not b5</action>
<action dev="dion" type="fix">Fix for jars not being included in an EAR file</action>
<action dev="dion" type="add">Added the new
<a href="changes-report.html">changes report</a>.
</action>
</release>
</body>
</document>
-82
View File
@@ -1,82 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<author email="dion@multitask.com.au">dIon Gillard</author>
<title>Maven J2EE Plug-in Directory Layout</title>
</properties>
<body>
<section name="Rationale">
<p>
Having a common directory layout would allow for users familiar
with one Maven project to immediately feel at home in another
Maven project. The advantages are analogous to adopting a
site-wide look-and-feel. Common Maven procedures strengthen the
Maven brand.
</p>
<p>
The next two sections document the directory layout expected by
Maven and the directory layout created by Maven. Please try to
conform to this structure as much as possible; however, if you
must these settings can be overridden via properties as
documented in the <a
href="http://maven.apache.org/start/integrate.html#Properties">Integration</a> document.
</p>
</section>
<section name="Common Directory Layout">
<table>
<tr>
<th>Directory or file name</th>
<th>Content</th>
<th>Comment</th>
</tr>
<tr>
<td>src/webapp</td>
<td>The base directory under which web applications can be found.</td>
<td>
This directory contains the web application to
be built. The web application name is passed to maven as the
property ${maven.j2ee.war.name}
</td>
</tr>
</table>
</section>
<section name="Maven-Generated Layout">
<table>
<tr>
<th>Directory name</th>
<th>Content</th>
<th>Comment</th>
</tr>
<tr>
<td>target/</td>
<td>Contains compiled WARs and EARs.</td>
<td>
This directory is used by the J2EE Plug-in as the destination of the
built war and ear files
</td>
</tr>
</table>
</section>
</body>
</document>
-51
View File
@@ -1,51 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<author email="dion@multitask.com.au">dIon Gillard</author>
<author email="plynch@apache.org">Peter Lynch</author>
<title>Futures for the J2EE Plug-in</title>
</properties>
<body>
<section name="Futures">
<p>
The following is a list of things that are being contemplated
for the Maven appserver Plug-in.
</p>
<ol>
<li>
We need to have Class-Path entries in generated J2EE EJB jars and
such. Quite tricky as it doesn't work the same for all application
servers (and across versions of them !).
</li>
<li>
Allow integration with a 'webserver' plugin so that application server
requests can seamlessly be hooked into the webserver.
</li>
<li>
Document how other Maven plugins that need an application server
instance to do their work can use this plugin.
</li>
</ol>
</section>
</body>
</document>
-401
View File
@@ -1,401 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<author email="dion@multitask.com.au">dIon Gillard</author>
<author email="kevin@rocketred.com.au">Kevin O'Neill</author>
<author email="plynch@apache.org">Peter Lynch</author>
<title>Maven J2EE Plug-in Goals</title>
</properties>
<body>
<section name="Overview">
<p>
This document describes the supplied goals
that are available when using the J2EE Plug-in with Maven.
</p>
<p>
Please refer to the
<a href="../../start/integrate.html">Integration</a> document for
more information on how to integrate these goals into
your project.
</p>
<p>
The build file utilizes various properties for default and
user-configurable settings. All J2EE Plug-in properties are described
in the <a href="./properties.html">Properties</a> document.
The rest of this document assumes your project follows the standard
<a href="dirlayout.html">Directory Layout</a>; however, it is
possible to override many of these defaults.
</p>
</section>
<section name="J2EE Goals">
<table>
<tr><th>Goal</th><th>Description</th></tr>
<tr>
<td><a href="#j2ee:validate-war">j2ee:validate-war</a></td>
<td>Validate a <code>WAR</code> file.</td>
</tr>
<tr>
<td><a href="#j2ee:ejb">j2ee:ejb</a></td>
<td>Creates an <code>EJB</code>jar file.</td>
</tr>
<tr>
<td><a href="#j2ee:ear">j2ee:ear</a></td>
<td>Creates an <code>EAR</code> file.</td>
</tr>
<tr>
<td><a href="#j2ee:appserver-install">j2ee:appserver-install</a></td>
<td>Installs an Application Server instance</td>
</tr>
<tr>
<td><a href="#j2ee:appserver-start">j2ee:appserver-start</a></td>
<td>Starts an Application Server instance</td>
</tr>
<tr>
<td><a href="#j2ee:appserver-stop">j2ee:appserver-stop</a></td>
<td>Stops an Application Server instance</td>
</tr>
<tr>
<td><a href="#j2ee:appserver-clean">j2ee:appserver-clean</a></td>
<td>Safely deletes the Application Server instance installation directory
specified by the <code><a href="./properties.html">${maven.appserver.dir}</a></code>
property.</td>
</tr>
</table>
<p/>
<subsection name="j2ee:validate-war">
<p>
The <code>j2ee:validate-war</code> target validates the newly
produced war file.
</p>
<p>
The validator checks the folowing:
<ol>
<li>The war file exists</li>
<li>It is readable</li>
<li>The war file has a web.xml (it's only a warning if it
doesn't exist)</li>
<li>Servlets defined by a <code>&lt;servlet&gt;</code> tag are loadable
from the war file and <strong>not</strong> the classpath</li>
<li>JSPs defined by a <code>&lt;servlet&gt;</code> tag exist in the war
</li>
<li>Taglibs defined by a <code>&lt;taglib&gt;</code> have a <code>
&lt;taglib-location&gt;</code> that exists in the war</li>
<li>Error pages specified by a <code>&lt;location&gt;</code> nested
within an <code>&lt;error-page&gt;</code> element must exist in the
war file</li>
<li>Login and error pages specified in the <code>&lt;form-login-config
&gt;</code> element must exist in the war file</li>
</ol>
</p>
</subsection>
<subsection name="j2ee:ejb">
<p>
The <code>j2ee:ejb</code> target generates the <code>ejb</code> jar file
for the project. Optionally it can also create jars containing the local
and remote interfaces. The files are produced in the
<code><a href="../properties.html#Directory Layout Settings">${maven.build.dir}</a>/ejb</code>
directory and have a name based on the
<code><a href="properties.html#maven.j2ee.ejb.name">${maven.j2ee.ejb.name}</a></code>
property.
</p>
<p>The files generated are:
<ul>
<li><code>${maven.j2ee.ejb.name}.jar</code></li>
<li><code>${maven.j2ee.ejb.name}-remote.jar</code> <emp>(optional)</emp></li>
<li><code>${maven.j2ee.ejb.name}-local.jar</code> <emp>(optional)</emp></li>
</ul>
</p>
<p>
Maven also includes the license file, LICENSE.txt, if it exists, in
the META-INF directory.
</p>
<p>
The contents of the ejb file include:
</p>
<table>
<tr><th>Item</th><th>Description</th></tr>
<tr>
<td>ejb-jar.xml</td>
<td>
A J2EE enterprise bean deployment descriptor, which
is placed in the root of the resulting ear file.
The <code><a href="properties.html#maven.j2ee.ejb.conf.dir">
${maven.j2ee.ejb.conf.dir}</a></code> and associated includes and
excludes properties defines the location of this file.
</td>
</tr>
<tr>
<td>Classes</td>
<td>
The files in the <code><a href="../properties.html#Directory Layout Settings">${maven.build.dest}</a></code>
directory to be included is specified using the
<code><a href="properties.html#maven.j2ee.ejb.includes">${maven.j2ee.ejb.includes}</a></code>
and <code><a href="properties.html#maven.j2ee.ejb.excludes">${maven.j2ee.ejb.excludes}</a></code>
properties.
</td>
</tr>
<tr>
<td>Meta-Inf</td>
<td>
Files to be included the <code>META-INF</code> directory of the ejb
jar file may be specified using the
<code><a href="properties.html#maven.j2ee.ejb.conf.dir">
${maven.j2ee.ejb.conf.dir}</a></code>,
<code><a href="properties.html#maven.j2ee.ejb.conf.includes">
${maven.j2ee.ejb.conf.includes}</a></code> and
<code><a href="properties.html#maven.j2ee.ejb.conf.excludes">
${maven.j2ee.ejb.conf.excludes}</a></code> properties.
</td>
</tr>
</table>
</subsection>
<subsection name="j2ee:ear">
<p>
The <code>j2ee:ear</code> target generates an ear file for the
project. The ear file is produced in the
<code><a href="../properties.html#Directory Layout Settings">${maven.build.dir}</a></code>
directory and has a name defined by the
<code><a href="properties.html#maven.j2ee.ear.name">${maven.j2ee.ear.name}</a></code>
property.
</p>
<p>
Maven also includes the license file, LICENSE.txt, if it exists, under
the directory META-INF.
</p>
<p>
The contents of the ear file include:
</p>
<table>
<tr><th>Item</th><th>Description</th></tr>
<tr>
<td>application.xml</td>
<td>
A J2EE enterprise application deployment descriptor, which
is placed in the META-INF of the resulting ear file.
The <code><a href="properties.html#maven.j2ee.ear.appxml">${maven.j2ee.ear.appxml}</a></code>
property defines the location of this file. It defaults to
<code>src/application.xml</code>
</td>
</tr>
<tr>
<td>Other Content</td>
<td>
Any dependencies specified in your <code>project.xml</code>
may be included by adding the ear.bundle.jar property to the
properties, e.g.
<source><![CDATA[
<dependency>
<id>CustomerEjb</id>
<version>2.4</version>
<properties>
<ear.bundle.jar>true</ear.bundle.jar>
</properties>
</dependency>
]]></source>
</td>
</tr>
</table>
</subsection>
<!-- j2ee:appserver-* targets ======================================= -->
<subsection name="j2ee:appserver-install">
<p>
The <code>j2ee:appserver-install</code> target installs the minimum
directory and file structure necessary for an individual application
server instance. Once the structure is created inside the
directory specified by <a href="properties.html#maven.appserver.dir">${maven.appserver.dir}</a>
, configuration files are installed using the copy task and the filter
mechanism built into <a href="http://ant.apache.org/">Ant</a>.
The exact work done by this target is specific to the
name and version of the application server you specify using
<a href="properties.html#maven.appserver.name">${maven.appserver.name}</a>
and <a href="properties.html#maven.appserver.version">${maven.appserver.version}</a>
properties.
</p>
<p>
Optionally, you can invoke the <code>install</code> target of the
Ant build.xml file copied to ${maven.appserver.dir} instead. See the
<a href="appserver.html#Appserver Proxy Build File">appserver proxy build file</a> for more
information.
</p>
<p>
During the configuration process, all
<a href="./properties.html#Application Server">maven.appserver.* properties</a>
are used as filter tokens while files in
${maven.conf.dir}/${maven.appserver.name}${maven.appserver.version} are
copied to ${maven.appserver.dir}. By default, certain files are
excluded from copying to ${maven.appserver.dir}. Files excluded are:
</p>
<ul>
<li>**/web.xml/**</li>
</ul>
<p>
This allows you to keep you webapp specific conf files in the same
directory and not have them installed with this target needlessly.
</p>
<p>
Your configuration files may require additional processing ( using additional
filter tokens for example). In that case you can use the
<a href="properties.html#maven.appserver.post-appserver-install.buildFile">maven-post-appserver-install</a>
callback target to re-configure files.
</p>
<p>
This target has different behavior
depending on the current status of the application server. The
behavior is defined by the following rules:
</p>
<table>
<tr><th>Server Status</th><th>Behavior</th></tr>
<tr>
<td>Not Installed</td>
<td>
Install and configure the application server.
</td>
</tr>
<tr>
<td>Installed and stopped</td>
<td>
Re-install/re-configure the application server.
</td>
</tr>
<tr>
<td>Installed and started</td>
<td>
Stop, re-install/re-configure, re-start the application server.
</td>
</tr>
</table>
<p><strong>Note:</strong> In all situations, the <code>j2ee:appserver-install</code>
target will overwrite existing appserver configuration files already
installed. Maven does this because it cannot know if the you have changed
your <a href="properties.html#Application Server">maven.appserver.* related properties</a>,
so it always re-configures the configuration files. Since this
operation has low overhead, it is considered a feature that allows dynamic
updates to your appserver related property values.</p>
</subsection>
<subsection name="j2ee:appserver-start">
<p>
The <code>j2ee:appserver-start</code> target
attempts to start the application server instance you have specified
via properties.
</p>
<p>Optionally, you can invoke the <code>start</code> target of the
Ant build.xml file copied to ${maven.appserver.dir} instead. See the
<a href="appserver.html#Appserver Proxy Build File">appserver proxy build file</a> for more
information.
</p>
<p>
This target will cause two processes to run. One process will
represent the running of the Ant build file for the Maven target.
The other will be the forked JVM that actually starts the application
server instance.
</p>
<p>
If you don't want the processes to block your current terminal,
you can execute the call to this target in the background using the
traditional '&amp;' directive on unix-like systems.
</p>
<p> For example, to run the server in the background, go to your
${maven.appserver.dir} directory and type:</p>
<source><![CDATA[ant start &]]></source>
<p>
This target has different behavior
depending on the current status of the application server. The
behavior is defined by the following rules:
</p>
<table>
<tr><th>Server Status</th><th>Behavior</th></tr>
<tr>
<td>Not Installed</td>
<td>
Install/configure, then start the application server.
</td>
</tr>
<tr>
<td>Installed and stopped</td>
<td>
Start the application server.
</td>
</tr>
<tr>
<td>Installed and started</td>
<td>
Stop and then re-start the application server. This is useful for
application servers that are not set to auto-reload resources.
</td>
</tr>
</table>
</subsection>
<subsection name="j2ee:appserver-stop">
<p>
The <code>j2ee:appserver-stop</code> target
attempts to stop the application server instance you have specified
via the <a href="properties.html">maven.appserver.* properties</a>.
</p>
<p>Optionally, you can invoke the <code>stop</code> target of the
Ant build.xml file copied to ${maven.appserver.dir} instead. See the
<a href="appserver.html#Appserver Proxy Build File">appserver proxy build file</a> for more
information.
</p>
<p>
This target only has relevance if the application server instance
is actually started. All other situations do nothing.
</p>
</subsection>
<subsection name="j2ee:appserver-clean">
<p>
The <code>j2ee:appserver-clean</code> target
attempts to safely delete the directory specified by
${maven.appserver.dir}.
</p>
<p>
This target has different behavior
depending on the current status of the application server. The
behavior is defined by the following rules:
</p>
<table>
<tr><th>Server Status</th><th>Behavior</th></tr>
<tr>
<td>Installed and stopped</td>
<td>
Deletes the directory specified by ${maven.appserver.dir}.
</td>
</tr>
<tr>
<td>Installed and started</td>
<td>
Stop the application server instance and then delete the directory
specified by ${maven.appserver.dir}.
</td>
</tr>
</table>
</subsection>
</section>
</body>
</document>
-89
View File
@@ -1,89 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Maen J2EE Plug-in</title>
<author email="dion@multitask.com.au">dIon Gillard</author>
<author email="plynch@apache.org">Peter Lynch</author>
</properties>
<body>
<section name="Maven J2EE Plug-in">
<p>
This document provides an overview of the reference section
for the Maven J2EE Plug-in.
The documents presented here are references, if you are looking
for more verbose usage material, please refer to the <a
href="../../start/index.html">Getting Started</a> section.
</p>
<subsection name="Overview of the J2EE Plug-in Reference Documentation">
<table>
<tr><th>Document</th><th>Description</th></tr>
<tr><td><a href="goals.html">Goals</a></td>
<td>
This document provides detailed information on the various
goals that are available as part of the Maven J2EE Plug-in.
</td>
</tr>
<tr><td><a href="properties.html">Properties</a></td>
<td>
The behavior of the Maven J2EE Plug-in can be altered via numerous
properties. This document describes each property
available as the default used.
</td>
</tr>
<tr><td><a href="dirlayout.html">Directory Layout</a></td>
<td>
The preferred directory layout structure is documented
here. This is a useful document if you are trying to
determine what a particular component of your directory
hierarchy is used for.
</td>
</tr>
<tr><td><a href="appserver.html">Appserver Notes</a></td>
<td>
<p>
This page contains additional reference material regarding the application server (
appserver ) control features of the Maven J2EE plugin.
</p>
<p>
For additional help in understanding what the appserver features of the
Maven J2EE plugin are, look at the
<a href="properties.html#Application Server">J2EE plug-in properties</a>
and <a href="./goals.html#maven:appserver-install">J2EE build file</a>
documents.
</p>
</td>
</tr>
<tr><td><a href="futures.html">Futures</a></td>
<td>
These are the current thoughts on additional items
that could or should be added to the plug-in.
They may or may not make it to an actual task list of a
developer.
</td>
</tr>
</table>
</subsection>
</section>
</body>
</document>
-36
View File
@@ -1,36 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project name="Maven">
<title>Maven</title>
<body>
<links>
<item name="Maven" href="http://maven.apache.org/"/>
</links>
<menu name="Overview">
<item name="Goals" href="/goals.html"/>
<item name="Properties" href="/properties.html"/>
<item name="Directory Layout" href="/dirlayout.html"/>
<item name="Appserver Notes" href="/appserver.html"/>
<item name="Futures" href="/futures.html"/>
</menu>
</body>
</project>
-510
View File
@@ -1,510 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<author email="dion@multitask.com.au">dIon Gillard</author>
<author email="kevino@jacus.com.au">Kevin O'Neill</author>
<author email="plynch@apache.org">Peter Lynch</author>
<title>Maven J2EE Plug-in Properties Documentation</title>
</properties>
<body>
<section name="Maven J2EE Plug-in Properties">
<p>
The following is an overview of the various properties (and
default values) used by the Maven J2EE Plug-in <a
href="goals.html">goals</a>. These properties
control various aspects of the J2EE build. Most of these
properties are optional and have defaults; however, there are
mandatory properties that must be set as described in this document.
</p>
<p>
These properties can be overridden to change the default behavior of
the Maven J2EE Plug-in. If you need to override any of these properties,
please refer to the
<a href="http://maven.apache.org/start/integrate.html">Integration</a>
document for the preferred method of setting properties in your project.
</p>
<table>
<tr><th>Section</th><th>Description</th></tr>
<tr>
<td><a href="#General Settings">General Settings</a></td>
<td>
These properties specify various settings that may be used in any
J2EE Plug-in target.
</td>
</tr>
<tr>
<td><a href="#War Settings">War</a></td>
<td>
These properties specify various settings that control the build
of a war file by the J2EE Plug-in.
</td>
</tr>
<tr>
<td><a href="#EJB Settings">EJB</a></td>
<td>
These properties specify various settings that control the build
of a ejb jar by the J2EE Plug-in.
</td>
</tr>
<tr>
<td><a href="#Ear Settings">Ear</a></td>
<td>
These properties specify various settings that control the build
of an ear file by the J2EE Plug-in.
</td>
</tr>
<tr>
<td><a href="#Application Server">Appserver</a></td>
<td>
These properties detail what application server instance you would
like to install and control for your project and how to configure
it.
</td>
</tr>
</table>
</section>
<section name="General Settings" >
<table>
<tr><th>Property</th><th>Optional?</th><th>Description</th></tr>
<tr>
<td><a name="maven.j2ee.version">maven.j2ee.version</a></td>
<td>
No for the "appserver:install" goal.
Otherwise, Yes.
</td>
<td>
Specifies the version of J2EE you are trying to use. Valid values are:
<ul>
<li>12</li>
<li>13</li>
</ul>
The above values represent version 1.2 and 1.3 respectively.
The value of this property is especially important for the
<a href="appserver.html#Supported Servers">supported servers</a>
used with the appserver control features of this plugin.
</td>
</tr>
</table>
</section>
<section name="War Settings">
<table>
<tr><th>Property</th><th>Optional?</th><th>Description</th></tr>
<tr>
<td><a name="maven.j2ee.war.name">maven.j2ee.war.name</a></td>
<td>No</td>
<td>
Specifies the name of the web application to be built.
</td>
</tr>
<tr>
<td><a name="maven.j2ee.war.src">maven.j2ee.war.src</a></td>
<td>Yes</td>
<td>
Specifies the directory in the local file system that is
used as the base directory for finding web applications. It defaults
to <code><a href="../properties.html#Directory Layout Settings">${maven.src.dir}</a>/webapps</code>
</td>
</tr>
<tr>
<td><a name="maven.j2ee.war.content">maven.j2ee.war.content</a></td>
<td>Yes</td>
<td>
Specifies the directory in the local file system that holds
web content to be placed in the war file. It defaults
to ${maven.j2ee.war.src}/${maven.j2ee.war.name}
</td>
</tr>
<tr>
<td><a name="maven.j2ee.war.classes.includes">maven.j2ee.war.classes.includes</a></td>
<td>Yes</td>
<td>
Specifies the pattern of files in the directory specified by
<code><a href="../properties.html#Directory Layout Settings">${maven.build.dest}</a></code>
to be included in the <code>/WEB-INF/classes</code> of the resulting
war file. It defaults to <code>**</code>, that is, all files.
</td>
</tr>
<tr>
<td><a name="maven.j2ee.war.classes.excludes">maven.j2ee.war.classes.excludes</a></td>
<td>Yes</td>
<td>
Specifies the pattern of files in the directory specified by
<code><a href="../properties.html#Directory Layout Settings">${maven.build.dest}</a></code>
that are <strong>not</strong> to be included in the
<code>/WEB-INF/classes</code> of the resulting war file.
It defaults to <code>**/package.html</code>.
</td>
</tr>
<tr>
<td><a name="maven.j2ee.war.lib.includes">maven.j2ee.war.lib.includes</a></td>
<td>Yes</td>
<td>
<p>WARNING: This property is temporarily unused.</p>
Specifies the pattern of files in the
<a href="../project-descriptor.html#dependencies">project dependencies</a>
to be included in the <code>/WEB-INF/lib</code> of the resulting
war file. It defaults to <code>*.jar</code>, that is, all dependencies.
</td>
</tr>
<tr>
<td><a name="maven.j2ee.war.lib.excludes">maven.j2ee.war.lib.excludes</a></td>
<td>Yes</td>
<td>
<p>WARNING: This property is temporarily unused.</p>
Specifies the pattern of files in the
<a href="http://maven.apache.org/reference/project-descriptor.html#dependencies">project dependencies</a>
not to be included in the <code>/WEB-INF/lib</code> of the resulting
war file. It defaults to blank, that is, no dependencies are excluded.
</td>
</tr>
<tr>
<td><a name="maven.j2ee.war.webxml">maven.j2ee.war.webxml</a></td>
<td>Yes</td>
<td>
Specifies the deployment descriptor to be used when building the war
file. It will be placed in <code>/WEB-INF/web.xml</code> of the resulting
war file. It defaults to <code><a href="../properties.html#Directory Layout Settings">${maven.conf.dir}</a>/${maven.j2ee.war.name}-web.xml</code>
</td>
</tr>
</table>
</section>
<section name="EJB Settings">
<table>
<tr><th>Property</th><th>Optional?</th><th>Description</th></tr>
<tr>
<td><a name="maven.j2ee.ejb.name">maven.j2ee.ejb.name</a></td>
<td>No</td>
<td>
Specifies the name of the ejb jar to be built.
</td>
</tr>
<tr>
<td><a name="maven.j2ee.ejb.conf.dir">maven.j2ee.ejb.conf.dir</a></td>
<td>No</td>
<td>
Specifies the directory to be used to find the deployment descriptor
and other files to be placed in <code>META-INF</code> directory of
the resulting ejb jar. It defaults to
<code><a href="../properties.html#Directory Layout Settings">${maven.conf.dir}</a>/<a href="properties.html#maven.j2ee.ejb.name">${maven.j2ee.ejb.name}</a></code>
</td>
</tr>
<tr>
<td>
<a name="maven.j2ee.ejb.conf.includes">maven.j2ee.ejb.conf.includes
</a>
</td>
<td>Yes</td>
<td>
Specifies the a pattern of files to be included in the
<code>META-INF</code> directory of the resulting ejb jar, relative
to the <code>${maven.j2ee.ejb.conf.dir}</code>. It defaults to
<code>ejb-jar.xml</code>.
</td>
</tr>
<tr>
<td>
<a name="maven.j2ee.ejb.conf.excludes">maven.j2ee.ejb.conf.excludes
</a>
</td>
<td>Yes</td>
<td>
Specifies the a pattern of files to be excluded from the
<code>META-INF</code> directory of the resulting ejb jar, relative
to the <code>${maven.j2ee.ejb.conf.dir}</code>. It defaults to
blank.
</td>
</tr>
<tr>
<td><a name="maven.j2ee.ejb.includes">maven.j2ee.ejb.includes</a></td>
<td>Yes</td>
<td>
Specifies the pattern of files in the
<a href="../properties.html#Directory Layout Settings">${maven.build.dest}</a>
directory to be included in the generated ejb jar. Defaults to <code>**/*</code>.
</td>
</tr>
<tr>
<td><a name="maven.j2ee.ejb.excludes">maven.j2ee.ejb.excludes</a></td>
<td>Yes</td>
<td>
Specifies the pattern of compiled class files to be <strong>excluded</strong>
from the generated ejb jar. Defaults to <code>**/package.html</code>.
</td>
</tr>
<tr>
<td><a name="maven.j2ee.ejb.local.includes">maven.j2ee.ejb.local.includes</a></td>
<td>Yes</td>
<td>
If this property exists then a jar file with the name
<code><a href="properties.html#maven.j2ee.ejb.name">${maven.j2ee.ejb.name}</a>-local.jar</code>
containing the matching files will be generated in
<code><a href="../properties.html#Directory Layout Settings">${maven.build.dir}</a>/ejb</code>.
</td>
</tr>
<tr>
<td><a name="maven.j2ee.ejb.local.excludes">maven.j2ee.ejb.local.excludes</a></td>
<td>Yes</td>
<td>
Files to be <strong>excluded</strong> from the
<code><a href="properties.html#maven.j2ee.ejb.name">${maven.j2ee.ejb.name}</a>-local.jar</code>
</td>
</tr>
<tr>
<td><a name="maven.j2ee.ejb.remote.includes">maven.j2ee.ejb.remote.includes</a></td>
<td>Yes</td>
<td>
If this property exists then a jar file with the name
<code><a href="properties.html#maven.j2ee.ejb.name">${maven.j2ee.ejb.name}</a>-remote.jar</code>
containing the matching files will be generated in
<code><a href="../properties.html#Directory Layout Settings">${maven.build.dir}</a>/ejb</code>.
</td>
</tr>
<tr>
<td><a name="maven.j2ee.ejb.remote.excludes">maven.j2ee.ejb.remote.excludes</a></td>
<td>Yes</td>
<td>
Files to be <strong>excluded</strong> from the
<code><a href="properties.html#maven.j2ee.ejb.name">${maven.j2ee.ejb.name}</a>-remote.jar</code>
</td>
</tr>
</table>
</section>
<section name="Ear Settings">
<table>
<tr><th>Property</th><th>Optional?</th><th>Description</th></tr>
<tr>
<td><a name="maven.j2ee.ear.name">maven.j2ee.ear.name</a></td>
<td>No</td>
<td>
Specifies the name of the enterprise application to be built.
</td>
</tr>
<tr>
<td><a name="maven.j2ee.ear.includes">maven.j2ee.ear.includes</a></td>
<td>Yes</td>
<td>
Specifies the pattern of files in the
<code><a href="../properties.html#Directory Layout Settings">${maven.build.dir}</a></code>
directory to be included in the resulting ear file. It defaults to
<code>*.jar, *.war</code>, that is, all jar and war files.
</td>
</tr>
<tr>
<td><a name="maven.j2ee.ear.excludes">maven.j2ee.ear.excludes</a></td>
<td>Yes</td>
<td>
Specifies the pattern of files in the
<code><a href="../properties.html#Directory Layout Settings">${maven.build.dir}</a></code>
directory that are not to be included in the resulting ear file.
It defaults to blank, that is, nothing is excluded.
</td>
</tr>
<tr>
<td><a name="maven.j2ee.ear.appxml">maven.j2ee.ear.appxml</a></td>
<td>Yes</td>
<td>
Specifies the deployment descriptor to be used when building the ear
file. It will be placed in <code>/application.xml</code> of the resulting
ear file. It defaults to <code><a href="../properties.html#Directory Layout Settings">${maven.conf.dir}</a>/${maven.j2ee.ear.name}-application.xml</code>
</td>
</tr>
</table>
</section>
<section name="Application Server">
<p> Although application server ( appserver ) instance control is part
of the J2EE plugin, all appserver related properties begin with
the "maven.appserver" prefix. This is indicative of the large scope of
functionality within the appserver targets.
</p>
<table>
<tr><th>Property</th><th>Optional?</th><th>Description</th></tr>
<tr>
<td><a name="maven.appserver.name">maven.appserver.name</a></td>
<td>No</td>
<td>
Specifies the name of the application server to install and control
for your project.
<p />
Please refer to the <a href="appserver.html#Supported Servers">supported servers</a>
table for a current list of supported appservers and the ${maven.appserver.name}
value they use use.
</td>
</tr>
<tr>
<td><a name="maven.appserver.version">maven.appserver.version</a></td>
<td>No</td>
<td>
Specifies the version of the appserver to install and control
for your project. Please refer to the
<a href="appserver.html#Supported Servers">supported servers</a>
table for a current list of supported appservers and the
${maven.appserver.version} value they use.
</td>
</tr>
<tr>
<td><a name="maven.appserver.home">maven.appserver.home</a></td>
<td>No</td>
<td>
Specifies the directory where the shared installation of the appserver
resides. This should be the home of the appserver specified by
<a href="#maven.appserver.name">${maven.appserver.name}</a>
and <a href="#maven.appserver.version">${maven.appserver.version}</a>.
</td>
</tr>
<tr>
<td><a name="maven.appserver.dir">maven.appserver.dir</a></td>
<td>No</td>
<td>
Specifies the directory where the appserver instance is installed
during the "appserver:install" goal.
Defaults to be ${basedir}/server .
</td>
</tr>
<tr>
<td><a name="maven.appserver.host">maven.appserver.host</a></td>
<td>No</td>
<td>
Specifies the default host to use to access the started server
instance. Defaults to 'localhost'.
</td>
</tr>
<tr>
<td><a name="maven.appserver.port.http">maven.appserver.port.http</a></td>
<td>No</td>
<td>
Specifies the HTTP port number to use to access the started server
instance. Defaults to 8080.
</td>
</tr>
<tr>
<td><a name="maven.appserver.url">maven.appserver.url</a></td>
<td>No</td>
<td>
The URL that is used to test if your appserver instance is running.
This URL must point to a target that will return a response code &lt; 400
when your appserver instance is started. Default value is
http://${maven.appserver.host}:${maven.appserver.port.http}/index.html
</td>
</tr>
<tr>
<td><a name="maven.appserver.port.https">maven.appserver.port.https</a></td>
<td>Yes</td>
<td>
Specifies the HTTPS port number to use to access the started server
instance using SSL. Defaults to 444.
</td>
</tr>
<tr>
<td><a name="maven.appserver.port.one">maven.appserver.port.one</a></td>
<td>Yes</td>
<td>
Optional additional port you can specify when configuring appserver files during
install.
</td>
</tr>
<tr>
<td><a name="maven.appserver.port.two">maven.appserver.port.two</a></td>
<td>Yes</td>
<td>
Optional additional port you can specify when configuring appserver files during
install.
</td>
</tr>
<tr>
<td><a name="maven.appserver.port.three">maven.appserver.port.three</a></td>
<td>Yes</td>
<td>
Optional additional port you can specify when configuring appserver files during
install.
</td>
</tr>
<tr>
<td><a name="maven.appserver.classpath">maven.appserver.classpath</a></td>
<td>Yes</td>
<td>
A <a href="http://ant.apache.org/manual/using.html#path">path-like</a>
value that can specify resources to make available as
part of the classpath of the JVM used when controlling your appserver instance.
For example, you may have several webapps running in the same container
that require a JDBC driver be available. Adding a reference to that
jar here will put it in the classpath of the JVM used to start
your appserver.
<p/>
An example of a valid value might be:
<p/>
<code>/jars/database.jar;/jars/foobar.jar</code>
<p/>
Path seperators are automatically converted to their system correct values.
By default, there are no additional paths. <strong>Jars required to control an appserver
are automatically built-in and do not need to be added here.</strong>
</td>
</tr>
<tr>
<td><a name="maven.appserver.rmi.port">maven.appserver.rmi.port</a></td>
<td>Yes</td>
<td>
RMI port you can specify.
Example: used to start/stop/restart orion appserver.
</td>
</tr>
<tr>
<td><a name="maven.appserver.adminusername">maven.appserver.adminusername</a></td>
<td>Yes</td>
<td>
Admin username to use when communicating with appserver.
Example: used to start/stop/restart orion appserver.
</td>
</tr>
<tr>
<td><a name="maven.appserver.adminpassword">maven.appserver.adminpassword</a></td>
<td>Yes</td>
<td>
Admin password to use when communicating with appserver.
Example: used to start/stop/restart orion appserver.
</td>
</tr>
</table>
</section>
</body>
</document>
-79
View File
@@ -1,79 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project
xmlns:j="jelly:core"
xmlns:ant="jelly:ant"
xmlns:define="jelly:define"
xmlns:doc="doc"
xmlns:u="jelly:util">
<goal name="maven-ashkelon-plugin:register">
<doc:registerReport
name="Ashkelon JavaDoc"
pluginName="maven-ashkelon-plugin"
link="ashkelon"
description="Report on the validity of all links in the documentation."/>
<!--doc:registerReport
name="Ashkelon Deploy Report"
pluginName="maven-ashkelon-plugin"
link="ashkelon-output"
description="Report on the validity of all links in the documentation."/-->
</goal>
<goal name="maven-ashkelon-plugin:deregister">
<doc:deregisterReport name="Ashkelon Report"/>
</goal>
<!-- ================================================================== -->
<!-- C R E A T E A S H K E L O N X M L R E P O R T -->
<!-- ================================================================== -->
<goal name="maven-ashkelon-plugin:report">
</goal>
<goal name="ashkelon:generate-xml">
<j:new var="packageTool" className="org.apache.maven.ashkelon.PackageTool"/>
<u:file var="src" name="${pom.build.sourceDirectory}"/>
<j:set var="packages" value="${packageTool.findPackages(src)}"/>
${packages}
<echo>${basedir}/${pom.artifactId}-ashkelon.xml</echo>
<j:file name="${basedir}/${pom.artifactId}-ashkelon.xml" prettyPrint="true" xmlns="dummy">
<api>
<name>${pom.name}</name>
<summarydescription>${pom.shortDescription}</summarydescription>
<description>${pom.description}</description>
<publisher>${pom.organization.name}</publisher>
<download_url>${pom.url}</download_url>
<release_date>2000-01-01T00:00:00.000</release_date>
<version>${pom.currentVersion}</version>
<j:forEach var="package" items="${packages}">
<package>${package}</package>
</j:forEach>
</api>
</j:file>
</goal>
</project>
-19
View File
@@ -1,19 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# -------------------------------------------------------------------
# P R O J E C T P R O P E R T I E S
# -------------------------------------------------------------------
-89
View File
@@ -1,89 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project>
<extend>../plugin-parent/project.xml</extend>
<pomVersion>3</pomVersion>
<id>maven-ashkelon-plugin</id>
<name>Maven Ashkelon Plugin</name>
<currentVersion>1.2.1-SNAPSHOT</currentVersion>
<description/>
<shortDescription>Publish javadoc to Ashkelon</shortDescription>
<url>http://maven.apache.org/reference/plugins/ashkelon/</url>
<package>org.apache.maven.ashkelon</package>
<issueTrackingUrl>http://jira.codehaus.org/browse/MPASHKELON</issueTrackingUrl>
<siteDirectory>/www/maven.apache.org/reference/plugins/ashkelon/</siteDirectory>
<repository>
<connection>scm:svn:http://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/ashkelon/</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/ashkelon/</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/maven/maven-1/plugins/trunk/ashkelon/</url>
</repository>
<versions>
<version>
<id>1.1</id>
<name>1.1</name>
<tag>MAVEN_ASHKELON_1_1</tag>
</version>
<version>
<id>1.2</id>
<name>1.2</name>
<tag>MAVEN_ASHKELON_1_2</tag>
</version>
</versions>
<developers/>
<dependencies>
<dependency>
<groupId>ashkelon</groupId>
<artifactId>ashkelon</artifactId>
<version>20030312.120000</version>
</dependency>
<dependency>
<groupId>castor</groupId>
<artifactId>castor</artifactId>
<version>0.9.4.3</version>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.0-dev</version>
</dependency>
<dependency>
<jar>j2h-1.2.jar</jar>
<groupId>java2html</groupId>
<artifactId>java2html</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>mm.mysql</groupId>
<artifactId>mm.mysql</artifactId>
<version>2.0.13-bin</version>
</dependency>
<dependency>
<groupId>servletapi</groupId>
<artifactId>servletapi</artifactId>
<version>2.3</version>
</dependency>
<dependency>
<groupId>oro</groupId>
<artifactId>oro</artifactId>
<version>2.0.7</version>
</dependency>
</dependencies>
</project>
@@ -1,121 +0,0 @@
package org.apache.maven.ashkelon;
/* ====================================================================
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ====================================================================
*/
import java.io.File;
import java.io.FileFilter;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
/**
* @author <a href="bwalding@jakarta.org">Ben Walding</a>
* @version $Id$
*/
public class PackageTool
{
/**
* Count the number of java files in a directory
* @param dir
* @return
*/
public static int countJavaFiles(File dir)
{
FileFilter ff = new FileFilter()
{
public boolean accept(File pathname)
{
String path = pathname.getName().toLowerCase();
if (path.endsWith(".java"))
{
return true;
}
return false;
}
};
File[] f = dir.listFiles(ff);
return f.length;
}
/**
*
* @param startDir
* @return a List of String object representing the packages
*/
public List findPackages(File startDir)
{
List results = internalFindPackages(new ArrayList(), startDir);
// Now post process them
List packages = new ArrayList(results.size());
Iterator resultsIter = results.iterator();
while (resultsIter.hasNext())
{
File f = (File) resultsIter.next();
String n = f.getAbsolutePath();
if (n.equals(startDir.getAbsolutePath()))
{
//Default package
packages.add("");
}
else
{
n = n.substring(startDir.getAbsolutePath().length() + 1);
n = n.replace('/', '.');
n = n.replace('\\', '.');
packages.add(n);
}
}
return packages;
}
public File[] getSubDir(File dir)
{
FileFilter ff = new FileFilter()
{
public boolean accept(File pathname)
{
return pathname.isDirectory();
}
};
return dir.listFiles(ff);
}
protected List internalFindPackages(List results, File startDir)
{
if (countJavaFiles(startDir) != 0)
{
results.add(startDir);
}
File subdirs[] = getSubDir(startDir);
for (int i = 0; i < subdirs.length; i++)
{
internalFindPackages(results, subdirs[i]);
}
return results;
}
}
-33
View File
@@ -1,33 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Changes</title>
<author email="jason@zenplex.com">Jason van Zyl</author>
</properties>
<body>
<release version="1.2.1-SNAPSHOT" date="in SVN"></release>
<release version="1.2" date="2004-05-15"></release>
<release version="1.1" date="2003-09-29">
<action dev="dion" type="update">update to use maven.docs.*/maven.gen.docs</action>
</release>
</body>
</document>
-40
View File
@@ -1,40 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Ashkelon Plugin</title>
<author email="bwalding@apache.org">Ben Walding</author>
</properties>
<body>
<section name="Maven Ashkelon Plugin">
<p>
<a href="http://sourceforge.net/projects/ashkelon/">Ashkelon</a>
is "an online reference tool for java api documentation. Ashkelon
is javadoc taken the next step of being able to reference multiple API's
(>100,000 methods) in a single, fully cross-referenced and searchable
database repository."
</p>
<p>
Maven's Ashkelon Plugin provides a set of goals
to integrate your project's javadocs to Ashkelon.
</p>
</section>
</body>
</document>
-365
View File
@@ -1,365 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!--
=============================================================================
AspectWerkz plugin for Maven.
Definition: AW supports 2 types of Aspects/Advice/Pointcuts definition:
- xmldef : Advice are defined as extending *Advice classes (BeforeAdvice,
AroundAdvice, etc). Custom javadoc attributes can be used to
link code to weave with advices.
- attribdef: Advices and pcds are defined purely using custom javadoc
attributes (@Execute, @Aspect, etc).
=============================================================================
-->
<project
xmlns:ant="jelly:ant"
xmlns:j="jelly:core"
xmlns:u="jelly:util"
xmlns:define="jelly:define"
xmlns:aw="aspectwerkz">
<!--
========================================================================
Init.
========================================================================
-->
<goal name="aspectwerkz:init">
<ant:mkdir dir="${maven.build.dir}"/>
<!-- Location of the XML definition file. If "xmldef" mode is used, then
the location of thus file is the location where attributec has
generated its xml file
(i.e. ${maven.aspectwerkz.build.definition.file}). If "attribdef"
mode is used then this property should point to its source
location. -->
<j:choose>
<j:when test="${context.getVariable('maven.aspectwerkz.mode') == 'xmldef'}">
<j:set var="maven.aspectwerkz.definition.file"
value="${maven.aspectwerkz.definition.file.build}"/>
</j:when>
<j:when test="${context.getVariable('maven.aspectwerkz.mode') == 'attribdef'}">
<j:set var="maven.aspectwerkz.definition.file"
value="${maven.aspectwerkz.definition.file.src}"/>
</j:when>
<j:otherwise>
<ant:fail>Valid values for [maven.aspectwerkz.mode] are [xmldef] and [attribdef] only.</ant:fail>
</j:otherwise>
</j:choose>
<path id="classpath.compile">
<ant:path refid="maven.dependency.classpath"/>
<ant:pathelement location="${plugin.getDependencyPath('aspectwerkz:aspectwerkz')}"/>
</path>
<path id="classpath.main">
<ant:path refid="classpath.compile"/>
<ant:pathelement location="${plugin.getDependencyPath('dom4j:dom4j')}"/>
<ant:pathelement location="${plugin.getDependencyPath('xml-apis:xml-apis')}"/>
<ant:pathelement location="${plugin.getDependencyPath('xerces:xerces')}"/>
<ant:pathelement location="${plugin.getDependencyPath('trove:trove')}"/>
</path>
<!-- Check if non-production aspects exist -->
<ant:available property="hasNonProductionAspects"
file="${maven.aspectwerkz.src.dir}" type="dir"/>
</goal>
<!--
========================================================================
Compile aspect sources.
========================================================================
-->
<goal name="aspectwerkz:compile" prereqs="aspectwerkz:init,java:compile"
description="Compile AspectWerkz java sources">
<!-- If there are non-production aspect sources, compile them -->
<j:if test="${hasNonProductionAspects}">
<ant:mkdir dir="${maven.aspectwerkz.build.dest}"/>
<ant:javac destdir="${maven.aspectwerkz.build.dest}"
excludes="**/package.html"
debug="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.debug')}"
deprecation="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.deprecation')}"
target="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.target')}"
optimize="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.optimize')}">
<ant:src path="${maven.aspectwerkz.src.dir}"/>
<ant:classpath>
<ant:path refid="classpath.compile"/>
<ant:pathelement path="${maven.build.dest}"/>
</ant:classpath>
<j:if test="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.compilerargs')}">
<ant:compilerarg line="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.compilerargs')}"/>
</j:if>
<j:if test="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.encoding')}">
<ant:setProperty name="encoding" value="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.encoding')}"/>
</j:if>
<j:if test="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.executable')}">
<ant:setProperty name="executable" value="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.executable')}"/>
</j:if>
<j:if test="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.fork')}">
<ant:setProperty name="fork" value="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.fork')}"/>
</j:if>
<j:if test="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.source')}">
<ant:setProperty name="source" value="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.source')}"/>
</j:if>
<j:if test="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.verbose')}">
<ant:setProperty name="verbose" value="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile.verbose')}"/>
</j:if>
</ant:javac>
<!-- Copy non java source files -->
<ant:copy todir="${maven.aspectwerkz.build.dest}">
<ant:fileset dir="${maven.aspectwerkz.src.dir}">
<ant:exclude name="**/*.java"/>
<ant:exclude name="**/*.html"/>
</ant:fileset>
</ant:copy>
</j:if>
</goal>
<!--
========================================================================
Compile javadoc attributes and generate an XML definition file. Used
only in xmldef mode.
========================================================================
-->
<goal name="aspectwerkz:attributec" prereqs="aspectwerkz:init"
description="Compile AspectWerkz javadoc attributes (xml-defined aspects)">
<j:if test="${context.getVariable('maven.aspectwerkz.mode') == 'xmldef'}">
<ant:echo>WARNING: aspectwerkz:attributec is not currently working very well...</ant:echo>
<!-- TODO: only run attributeC if sources are newer than target
XML definition file -->
<ant:java dir="${maven.build.dir}" failonerror="true" fork="true"
classname="org.codehaus.aspectwerkz.metadata.AttributeC">
<ant:sysproperty key="aspectwerkz.definition.validate"
value="${maven.aspectwerkz.definition.validate}"/>
<!-- TODO: Use ${maven.compile.src.set} and ${maven.aspectwerkz.src.dir}.
See aspectwerkz:aspectc for an example. However, I need to verify
if attributec supports several input directories first -->
<ant:arg file="${maven.aspectwerkz.src.dir}"/>
<ant:arg file="${maven.aspectwerkz.definition.file}"/>
<j:if test="${context.getVariable('maven.aspectwerkz.definition.file.merge') != null}">
<ant:arg line="-m ${maven.aspectwerkz.definition.file.merge}"/>
</j:if>
<j:if test="${context.getVariable('maven.aspectwerkz.uuid') != null}">
<ant:arg line="-u ${maven.aspectwerkz.uuid}"/>
</j:if>
<ant:classpath>
<ant:path refid="classpath.main"/>
<ant:pathelement location="${plugin.getDependencyPath('qdox:qdox')}"/>
<ant:pathelement location="${plugin.getDependencyPath('jrexx:jrexx')}"/>
</ant:classpath>
</ant:java>
</j:if>
</goal>
<!--
========================================================================
Parse files for custom javadoc tags (attribef mode only) and weave
them in the bytecode of the aspects themselves.
========================================================================
-->
<goal name="aspectwerkz:aspectc" prereqs="aspectwerkz:compile">
<j:if test="${context.getVariable('maven.aspectwerkz.mode') == 'attribdef'}">
<!-- TODO: only run aspectc if sources are newer than target
XML definition file -->
<!-- Transforming Ant path structure into a list of dirs that can be used
to define an Ant fileset. We're using <pathconvert> to automatically
separate dirs with a known delimiter independently of any
platform -->
<ant:pathconvert property="compileSrcSetString" pathSep="||||"
refid="maven.compile.src.set"/>
<u:tokenize var="srcDirs" delim="||||">${compileSrcSetString}</u:tokenize>
<!-- Parse all known source directories -->
<j:forEach var="srcDir" items="${srcDirs}">
<aw:aspectc javaSrc="${srcDir}" classSrc="${maven.build.dest}"/>
</j:forEach>
<!-- Parse non-production aspects if source directory has been defined -->
<j:if test="${hasNonProductionAspects}">
<aw:aspectc javaSrc="${maven.aspectwerkz.src.dir}"
classSrc="${maven.aspectwerkz.build.dest}"/>
</j:if>
<!-- AspectC currently has a bug in that it creates a java.lang.Object
class file in the output directory. Until this is fixed, we need to
remove that files. Otherwise, AspectWerkc will try to instrument it,
which will lead to an error... -->
<ant:delete file="${maven.aspectwerkz.aspectc.build.dir}/java/lang/Object.class"/>
</j:if>
</goal>
<!--
========================================================================
Weave aspects at build time (offline mode). Works for both "xmldef"
and "attribdef" modes.
========================================================================
-->
<goal name="aspectwerkz:weave"
prereqs="aspectwerkz:attributec,aspectwerkz:aspectc"
description="Weave aspects (offline mode)">
<!-- TODO: Add support for extension classes -->
<!-- Create a path for the -cp parameter of the AspectWerkzC class -->
<ant:path id="aspectwerkzc.cp">
<!-- Search for aspect libraries to weave to the source code. These are
defined as dependencies in project.xml -->
<j:forEach var="artifact" items="${pom.artifacts}">
<j:set var="dep" value="${artifact.dependency}"/>
<j:if test="${dep.getProperty('aspectwerkz.library') == 'true'}">
<ant:pathelement location="${artifact.path}"/>
</j:if>
</j:forEach>
</ant:path>
<ant:property name="aspectwerkzcp" refid="aspectwerkzc.cp"/>
<ant:java dir="${maven.build.dir}" failonerror="true" fork="true"
classname="org.codehaus.aspectwerkz.compiler.AspectWerkzC">
<j:if test="${context.getVariable('maven.aspectwerkz.verbose') == 'true'}">
<ant:sysproperty key="aspectwerkz.transform.verbose" value="true"/>
</j:if>
<ant:sysproperty key="aspectwerkz.classloader.preprocessor"
value="${maven.aspectwerkz.classloader.preprocessor}"/>
<ant:sysproperty key="aspectwerkz.transform.filter"
value="${maven.aspectwerkz.transform.filter}"/>
<ant:sysproperty key="aspectwerkz.definition.file"
value="${maven.aspectwerkz.definition.file}"/>
<ant:arg value="-verify"/>
<ant:arg value="-haltOnError"/>
<j:if test="${!empty(aspectwerkzcp)}">
<ant:arg value="-cp"/>
<ant:arg path="${aspectwerkzcp}"/>
</j:if>
<!-- If using the attribdef mode, weave classes generated by aspectc -->
<j:if test="${context.getVariable('maven.aspectwerkz.mode') == 'attribdef'}">
<ant:arg file="${maven.aspectwerkz.aspectc.build.dir}"/>
</j:if>
<!-- TODO: Add support for xmldef mode -->
<ant:classpath>
<ant:path refid="classpath.main"/>
<ant:pathelement location="${plugin.getDependencyPath('ant:ant')}"/>
<ant:pathelement location="${plugin.getDependencyPath('aspectwerkz:aspectwerkz-core')}"/>
<ant:pathelement location="${plugin.getDependencyPath('bcel:bcel')}"/>
<ant:pathelement location="${plugin.getDependencyPath('jrexx:jrexx')}"/>
<ant:pathelement location="${plugin.getDependencyPath('commons-jexl:commons-jexl')}"/>
</ant:classpath>
</ant:java>
<!-- Copy weaved classes to target directory -->
<ant:mkdir dir="${maven.aspectwerkz.weave.build.dir}"/>
<j:if test="${context.getVariable('maven.aspectwerkz.mode') == 'attribdef'}">
<ant:copy todir="${maven.aspectwerkz.weave.build.dir}">
<ant:fileset dir="${maven.aspectwerkz.aspectc.build.dir}"/>
</ant:copy>
</j:if>
</goal>
<!--
========================================================================
Custom tag library for factorizing common actions that need to be
executed several times in this script.
========================================================================
-->
<define:taglib uri="aspectwerkz">
<!--
@param javaSrc source directory that will be parsed
@param classSrc path where compiled sources are located
-->
<define:tag name="aspectc">
<ant:echo>Parsing [${javaSrc}] using [${classSrc}] ...</ant:echo>
<ant:mkdir dir="${maven.aspectwerkz.aspectc.build.dir}"/>
<ant:java dir="${maven.build.dir}" failonerror="true" fork="true"
classname="org.codehaus.aspectwerkz.attribdef.definition.AspectC">
<j:if test="${context.getVariable('maven.aspectwerkz.verbose') == 'true'}">
<ant:arg value="-verbose"/>
</j:if>
<!-- Path to source dir -->
<ant:arg file="${javaSrc}"/>
<!-- Path to classes dir -->
<ant:arg file="${classSrc}"/>
<!-- (optional) Path to where aspectc result will be put -->
<ant:arg file="${maven.aspectwerkz.aspectc.build.dir}"/>
<ant:classpath>
<ant:path refid="classpath.main"/>
<ant:pathelement location="${plugin.getDependencyPath('aspectwerkz:aspectwerkz-core')}"/>
<ant:pathelement location="${plugin.getDependencyPath('qdox:qdox')}"/>
<ant:pathelement location="${plugin.getDependencyPath('bcel:bcel')}"/>
</ant:classpath>
</ant:java>
</define:tag>
</define:taglib>
</project>
-82
View File
@@ -1,82 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
#============================================================================
# Properties for the AspectWerkz plugin for Maven
# ===========================================================================
# AW supports 2 types of Aspects/Advice/Pointcuts definition:
# - xmldef : Advice are defined as extending *Advice classes (BeforeAdvice,
# AroundAdvice, etc). Custom javadoc attributes can be used to
# link code to weave with advices.
# - attribdef: Advices and pcds are defined purely using custom javadoc
# attributes (@Execute, @Aspect, etc).
# You need to tell the plugin how you have defined your AW
# Aspects/Advices/Pointcuts. The 2 valid values are "xmldef" and "attribdef".
maven.aspectwerkz.mode = attribdef
# Location where weaved classes will be generated.
maven.aspectwerkz.weave.build.dir = ${maven.build.dest}
# Decide whether definition validation is turned on or off.
maven.aspectwerkz.definition.validate = false
# Verbose mode
maven.aspectwerkz.verbose = false
# Classloader to use for class files weaving
maven.aspectwerkz.classloader.preprocessor = org.codehaus.aspectwerkz.transform.AspectWerkzPreProcessor
# The AW plugin looks for source files in ${pom.sourceDirectory}.
# It also supports all source directories added to the ${maven.compile.src.set}
# Ant path variable. Moreover, if you wish to keep non-production aspects in a
# specific directory, you can define the property below.
maven.aspectwerkz.src.dir = ${basedir}/src/aspectwerkz
# Location where non-production aspect classes will be compiled to.
# There are the classes defined by ${maven.aspectwerkz.src.dir}.
maven.aspectwerkz.build.dest = ${maven.build.dir}/aspectwerkz/classes
#----------------------------------------------------------------------------
# attribdef mode properties
# ---------------------------------------------------------------------------
# Location of the XML definition file.
maven.aspectwerkz.definition.file.src = ${basedir}/conf/aspectwerkz.xml
# Location where aspectc results will be generated.
maven.aspectwerkz.aspectc.build.dir = ${maven.build.dir}/aspectwerkz/aspectc
#----------------------------------------------------------------------------
# xmldef mode properties
# ---------------------------------------------------------------------------
# Location of the AW XML definition file that will be created by the
# attribute compilation (when calling <aspectwerkz:attributeC>). This is only
# used in "xmldef" mode.
maven.aspectwerkz.definition.file.build = ${maven.build.dir}/aspectwerkz.xml
# If set to "no", prevents org.codehaus.aspectwerkz and related classes
# (jexl, trove, dom4j...) from being instrumented.
maven.aspectwerkz.transform.filter = no
# (optional). Definition file to be merged with the main definition file.
# Used by the <aspectwerkz:attributeC> goal. Only for "xmldef" mode.
# maven.aspectwerkz.definition.file.merge =
# (optional). UUID to use. If not specified a default one will be automatically
# generated. Used by the <aspectwerkz:attributeC> goal. Only for "xmldef" mode.
# maven.aspectwerkz.uuid =
-19
View File
@@ -1,19 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# -------------------------------------------------------------------
# P R O J E C T P R O P E R T I E S
# -------------------------------------------------------------------
-124
View File
@@ -1,124 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project>
<extend>../plugin-parent/project.xml</extend>
<pomVersion>3</pomVersion>
<id>maven-aspectwerkz-plugin</id>
<name>Maven AspectWerkz Plugin</name>
<currentVersion>1.2</currentVersion>
<description>Plugin for AspectWerkz</description>
<shortDescription>AspectWerkz plugin</shortDescription>
<url>http://maven.apache.org/reference/plugins/aspectwerkz/</url>
<issueTrackingUrl>http://jira.codehaus.org/browse/MPASPECTWERKZ</issueTrackingUrl>
<siteDirectory>/www/maven.apache.org/reference/plugins/aspectwerkz/</siteDirectory>
<repository>
<connection>scm:svn:http://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/aspectwerkz/</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/aspectwerkz/</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/maven/maven-1/plugins/trunk/aspectwerkz/</url>
</repository>
<versions>
<version>
<id>1.0</id>
<name>1.0</name>
<tag>MAVEN_ASPECTWERKZ_1_0</tag>
</version>
<version>
<id>1.1</id>
<name>1.1</name>
<tag>MAVEN_ASPECTWERKZ_1_1</tag>
</version>
<version>
<id>1.2</id>
<name>1.2</name>
<tag>MAVEN_ASPECTWERKZ_1_2</tag>
</version>
</versions>
<developers>
<developer>
<name>Vincent Massol</name>
<id>vmassol</id>
<email>vmassol@pivolis.com</email>
<organization>Pivolis</organization>
<roles>
<role>Creator</role>
<role>Java Developer</role>
<role>Release Manager</role>
</roles>
</developer>
</developers>
<dependencies>
<dependency>
<groupId>aspectwerkz</groupId>
<artifactId>aspectwerkz-core</artifactId>
<version>0.9</version>
</dependency>
<dependency>
<groupId>aspectwerkz</groupId>
<artifactId>aspectwerkz</artifactId>
<version>0.9</version>
</dependency>
<dependency>
<groupId>qdox</groupId>
<artifactId>qdox</artifactId>
<version>1.3</version>
</dependency>
<dependency>
<groupId>jrexx</groupId>
<artifactId>jrexx</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>ant</groupId>
<artifactId>ant</artifactId>
<version>1.5.2</version>
</dependency>
<dependency>
<groupId>bcel</groupId>
<artifactId>bcel</artifactId>
<version>5.1</version>
</dependency>
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>trove</groupId>
<artifactId>trove</artifactId>
<version>1.0.2</version>
</dependency>
<dependency>
<groupId>commons-jexl</groupId>
<artifactId>commons-jexl</artifactId>
<version>1.0-beta-2</version>
</dependency>
<dependency>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
<version>1.0.b2</version>
</dependency>
<dependency>
<groupId>xerces</groupId>
<artifactId>xerces</artifactId>
<version>2.4.0</version>
</dependency>
</dependencies>
</project>
@@ -1,30 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!DOCTYPE aspectwerkz PUBLIC "-//AspectWerkz//DTD//EN" "http://aspectwerkz.codehaus.org/dtd/aspectwerkz.dtd">
<aspectwerkz>
<system id="test">
<package name="org.apache.maven.aspectwerkz">
<use-aspect class="SampleAspect"/>
<use-aspect class="SampleNonProductionAspect"/>
<use-aspect class="ReusableAspect"/>
</package>
</system>
</aspectwerkz>
@@ -1,41 +0,0 @@
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project xmlns:util="jelly:util" xmlns:j="jelly:core" xmlns:ant="jelly:ant">
<goal name="dist" prereqs="aspectwerkz:weave"/>
<!-- Execute the application to verify it works -->
<goal name="run">
<ant:java dir="${maven.build.dir}" failonerror="true" fork="true"
classname="org.apache.maven.aspectwerkz.Target">
<ant:sysproperty key="aspectwerkz.definition.file" value="${basedir}/conf/aspectwerkz.xml"/>
<ant:classpath>
<ant:pathelement location="${maven.build.dir}/aspectwerkz/weaved"/>
<ant:pathelement location="${pom.getDependencyPath('maven:test-maven-aspectwerkz-plugin-parent')}"/>
<ant:pathelement location="${pom.getDependencyPath('aspectwerkz:aspectwerkz')}"/>
<ant:pathelement location="${pom.getDependencyPath('dom4j:dom4j')}"/>
<ant:pathelement location="${pom.getDependencyPath('trove:trove')}"/>
<ant:pathelement location="${pom.getDependencyPath('bcel:bcel')}"/>
<ant:pathelement location="${pom.getDependencyPath('jrexx:jrexx')}"/>
</ant:classpath>
</ant:java>
</goal>
</project>
@@ -1,22 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# -------------------------------------------------------------------
# P R O J E C T P R O P E R T I E S
# -------------------------------------------------------------------
maven.aspectwerkz.verbose = true
maven.aspectwerkz.weave.build.dir = ${maven.build.dir}/aspectwerkz/weaved
@@ -1,54 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project>
<extend>${basedir}/../project.xml</extend>
<id>test-maven-aspectwerkz-plugin-child</id>
<name>Maven Aspectwerkz plugin test - Child</name>
<dependencies>
<dependency>
<groupId>maven</groupId>
<artifactId>test-maven-aspectwerkz-plugin-parent</artifactId>
<version>1.0</version>
<properties>
<aspectwerkz.library>true</aspectwerkz.library>
</properties>
</dependency>
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>trove</groupId>
<artifactId>trove</artifactId>
<version>1.0.2</version>
</dependency>
<dependency>
<groupId>bcel</groupId>
<artifactId>bcel</artifactId>
<version>5.1</version>
</dependency>
<dependency>
<groupId>jrexx</groupId>
<artifactId>jrexx</artifactId>
<version>1.1.1</version>
</dependency>
</dependencies>
</project>
@@ -1,28 +0,0 @@
package org.apache.maven.aspectwerkz;
import org.codehaus.aspectwerkz.attribdef.Pointcut;
import org.codehaus.aspectwerkz.attribdef.aspect.Aspect;
import org.codehaus.aspectwerkz.joinpoint.JoinPoint;
/**
* @Aspect perJVM
*
* @author <a href="mailto:vmassol@apache.org">Vincent Massol</a>
*/
public class SampleNonProductionAspect extends Aspect
{
/**
* @Execution * *..Target.someMethod2(..)
*/
Pointcut sampleNonProductionPointcut;
/**
* @Around sampleNonProductionPointcut
*/
public Object sampleNonProductionAdvice(final JoinPoint joinPoint)
throws Throwable
{
System.out.println("sampleNonProductionPointcut");
return joinPoint.proceed();
}
}
@@ -1,27 +0,0 @@
package org.apache.maven.aspectwerkz;
import org.codehaus.aspectwerkz.attribdef.Pointcut;
import org.codehaus.aspectwerkz.attribdef.aspect.Aspect;
import org.codehaus.aspectwerkz.joinpoint.JoinPoint;
/**
* @Aspect perJVM
*
* @author <a href="mailto:vmassol@apache.org">Vincent Massol</a>
*/
public class SampleAspect extends Aspect
{
/**
* @Execution * *..Target.someMethod1(..)
*/
Pointcut samplePointcut;
/**
* @Around samplePointcut
*/
public Object sampleAdvice(final JoinPoint joinPoint) throws Throwable
{
System.out.println("samplePointcut");
return joinPoint.proceed();
}
}
@@ -1,23 +0,0 @@
package org.apache.maven.aspectwerkz;
/**
* @author <a href="mailto:vmassol@apache.org">Vincent Massol</a>
*/
public class Target
{
public static void someMethod1()
{
System.out.println("someMethod1");
}
public static void someMethod2()
{
System.out.println("someMethod2");
}
public static void main(String[] args)
{
Target.someMethod1();
Target.someMethod2();
}
}
-28
View File
@@ -1,28 +0,0 @@
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project xmlns:util="jelly:util" xmlns:j="jelly:core">
<goal name="testPlugin">
<!-- Generate project artifacts -->
<j:set var="goal" value="clean,dist"/>
<attainGoal name="multiproject:goal"/>
</goal>
</project>
@@ -1,22 +0,0 @@
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project xmlns:util="jelly:util" xmlns:j="jelly:core">
<goal name="dist" prereqs="aspectwerkz:aspectc,jar:install"/>
</project>
@@ -1,22 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# -------------------------------------------------------------------
# P R O J E C T P R O P E R T I E S
# -------------------------------------------------------------------
maven.aspectwerkz.verbose = true
maven.aspectwerkz.aspectc.build.dir = ${maven.build.dest}
@@ -1,24 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project>
<extend>${basedir}/../project.xml</extend>
<id>test-maven-aspectwerkz-plugin-parent</id>
<name>Maven Aspectwerkz plugin test - Parent</name>
</project>
@@ -1,27 +0,0 @@
package org.apache.maven.aspectwerkz;
import org.codehaus.aspectwerkz.attribdef.Pointcut;
import org.codehaus.aspectwerkz.attribdef.aspect.Aspect;
import org.codehaus.aspectwerkz.joinpoint.JoinPoint;
/**
* @Aspect perJVM
*
* @author <a href="mailto:vmassol@apache.org">Vincent Massol</a>
*/
public class ReusableAspect extends Aspect
{
/**
* @Execution * *..Target.someMethod*(..)
*/
Pointcut reusablePointcut;
/**
* @Around reusablePointcut
*/
public Object reusableAdvice(final JoinPoint joinPoint) throws Throwable
{
System.out.println("reusablePointcut");
return joinPoint.proceed();
}
}
@@ -1,22 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# MUST specify these, even though they are the defaults, so we can run inside reactor where they were already set
maven.multiproject.basedir=${basedir}
maven.multiproject.includes=*/project.xml
maven.multiproject.excludes=
-64
View File
@@ -1,64 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project>
<pomVersion>3</pomVersion>
<id>test-maven-aspectwerkz-plugin</id>
<name>Test project for Maven AspectWerkz</name>
<groupId>maven</groupId>
<currentVersion>1.0</currentVersion>
<organization>
<name>Apache Software Foundation</name>
<url>http://www.apache.org/</url>
<logo>http://maven.apache.org/images/jakarta-logo-blue.gif</logo>
</organization>
<inceptionYear>2003</inceptionYear>
<package>org.apache.maven</package>
<logo>http://maven.apache.org/images/maven.jpg</logo>
<description>Test for Maven AspectWerkz plugin</description>
<shortDescription>Test for Maven AspectWerkz plugin</shortDescription>
<url>http://maven.apache.org/reference/plugins/aspectwerkz/</url>
<siteDirectory>/www/maven.apache.org/reference/plugins/aspectwerkz/</siteDirectory>
<repository>
<connection>scm:cvs:pserver:anoncvs@cvs.apache.org:/home/cvspublic:maven/src/plugins-build/aspectwerkz/</connection>
<url>http://cvs.apache.org/viewcvs/maven/src/plugins-build/aspectwerkz/</url>
</repository>
<developers>
<developer>
<name>Vincent Massol</name>
<id>vmassol</id>
<email>vmassol@pivolis.com</email>
<organization>Pivolis</organization>
<roles>
<role>Developer</role>
</roles>
</developer>
</developers>
<dependencies>
<dependency>
<groupId>aspectwerkz</groupId>
<artifactId>aspectwerkz</artifactId>
<version>0.9</version>
</dependency>
</dependencies>
<build>
<sourceDirectory>src/main</sourceDirectory>
</build>
</project>
-35
View File
@@ -1,35 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Changes</title>
<author email="vmassol@apache.org">Vincent Massol</author>
</properties>
<body>
<release version="1.2" date="2004-05-15"></release>
<release version="1.1" date="2004-03-22">
<action dev="brett" type="fix">Fixes for JDK 1.3 in relation to XML parsers.</action>
</release>
<release version="1.0" date="2004-02-20">
<action dev="vmassol" type="add">Plugin creation.</action>
</release>
</body>
</document>
-59
View File
@@ -1,59 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Maven AspectWerkz plugin goals</title>
<author email="vmassol@apache.org">Vincent Massol</author>
</properties>
<body>
<goals>
<goal>
<name>aspectwerkz:attributec</name>
<description>
Compile AspectWerkz javadoc attributes for xml-defined aspects
(i.e. <code>maven.aspectwerkz.mode = xmldef</code>).
</description>
</goal>
<goal>
<name>aspectwerkz:aspectc</name>
<description>
Parse files for custom javadoc tags (attribef mode only) and weave
them in the bytecode of the aspects themselves.
</description>
</goal>
<goal>
<name>aspectwerkz:compile</name>
<description>
Compile both main runtime sources and any non-production source
aspects.
</description>
</goal>
<goal>
<name>aspectwerkz:weave</name>
<description>
Weave aspects at build time (offline mode). Works for both "xmldef"
(<code>maven.aspectwerkz.mode = xmldef</code>) and "attribdef"
(<code>maven.aspectwerkz.mode = attribdef</code>) modes.
</description>
</goal>
</goals>
</body>
</document>
-37
View File
@@ -1,37 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Maven AspectWerkz plugin</title>
<author email="vmassol@apache.org">Vincent Massol</author>
</properties>
<body>
<section name="Maven AspectWerkz plugin">
<p>
Offers goals to manipulate
<a href="http://aspectwerkz.codehaus.org">AspectWerkz</a>
sources: attribute compilation, offline weaving of aspects,
execution of weaved application, etc.
</p>
</section>
</body>
</document>
-34
View File
@@ -1,34 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project name="Maven AspectWerkz plugin">
<title>Maven AspectWerkz plugin</title>
<body>
<links>
<item name="Maven" href="http://maven.apache.org/"/>
<item name="AspectWerkz" href="http://aspectwerkz.codehaus.org/"/>
</links>
<menu name="Overview">
<item name="Goals" href="/goals.html"/>
<item name="Properties" href="/properties.html"/>
</menu>
</body>
</project>
-208
View File
@@ -1,208 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>AspectWerkz properties</title>
<author email="vmassol@apache.org">Vincent Massol</author>
</properties>
<body>
<section name="Weaving aspect libraries">
<p>
It is possible to specify aspect libraries that will be weaved to the
main source code. For example:
</p>
<source><![CDATA[
<dependency>
<groupId>groupId</groupId>
<artifactId>artifactId</artifactId>
<version>version</version>
<type>jar|zip</type>
<properties>
<aspectwerkz.library>true</aspectwerkz.library>
</properties>
</dependency>
]]></source>
</section>
<section name="AspectWerkz generic properties">
<table>
<tr>
<th>Property</th>
<th>Optional?</th>
<th>Description</th>
</tr>
<tr>
<td>maven.aspectwerkz.mode</td>
<td>Yes</td>
<td>
AW supports 2 types of Aspects/Advice/Pointcuts definition:
<ul>
<li>
<strong>xmldef</strong>: Advice are defined as extending
*Advice classes (BeforeAdvice, AroundAdvice, etc). Custom
javadoc attributes can be used to link code to weave with
advices.
</li>
<li>
<strong>attribdef</strong>: Advices and pcds are defined
purely using custom javadoc attributes (@Execute, @Aspect,
etc).
</li>
</ul>
You need to tell the plugin how you have defined your AW
Aspects/Advices/Pointcuts. The 2 valid values are
<code>xmldef</code> and <code>attribdef</code>.
The default value is <code>attribdef</code>.
</td>
</tr>
<tr>
<td>maven.aspectwerkz.weave.build.dir</td>
<td>Yes</td>
<td>
Location where weaved classes will be generated. Default to
<code>${maven.build.dest}</code>.
</td>
</tr>
<tr>
<td>maven.aspectwerkz.definition.validate</td>
<td>Yes</td>
<td>
Decide whether definition validation is turned on or off.
Defaults to <code>false</code>.
</td>
</tr>
<tr>
<td>maven.aspectwerkz.verbose</td>
<td>Yes</td>
<td>
Decide whether to use verbose output or not during execution of
this plugin's goals. Defaults to <code>false</code>.
</td>
</tr>
<tr>
<td>maven.aspectwerkz.src.dir</td>
<td>Yes</td>
<td>
Location of non-production aspect source files.
The AW plugin looks for source files in
<code>${pom.sourceDirectory}</code>. It also supports all source
directories added to the <code>${maven.compile.src.set}</code>
Ant path variable. Moreover, if you wish to keep non-production
aspects in a specific directory, you can define the
<code>maven.aspectwerkz.src.dir</code> property. Defaults to
<code>maven.aspectwerkz.src.dir = ${basedir}/src/aspectwerkz</code>.
</td>
</tr>
<tr>
<td>maven.aspectwerkz.build.dest</td>
<td>Yes</td>
<td>
Location where non-production aspect classes will be compiled to.
These are the classes defined by
<code>${maven.aspectwerkz.src.dir}</code>. Defaults to
<code>maven.aspectwerkz.build.dest = ${maven.build.dir}/aspectwerkz/classes</code>.
</td>
</tr>
<tr>
<td>maven.aspectwerkz.classloader.preprocessor</td>
<td>Yes</td>
<td>
Classloader to use for class files weaving. Defaults to
<code>org.codehaus.aspectwerkz.transform.AspectWerkzPreProcessor</code>.
</td>
</tr>
</table>
</section>
<section name="AspectWerkz properties specific to 'attribdef' mode">
<table>
<tr>
<th>Property</th>
<th>Optional?</th>
<th>Description</th>
</tr>
<tr>
<td>maven.aspectwerkz.definition.file.src</td>
<td>Yes</td>
<td>
Location of the XML definition file. Default to
<code>${basedir}/conf/aspectwerkz.xml</code>.
</td>
</tr>
<tr>
<td>maven.aspectwerkz.aspectc.build.dir</td>
<td>Yes</td>
<td>
Location where aspectc results will be generated. Defaults to
<code>${maven.build.dir}/aspectwerkz/aspectc</code>.
</td>
</tr>
</table>
</section>
<section name="AspectWerkz properties specific to 'xmldef' mode">
<table>
<tr>
<th>Property</th>
<th>Optional?</th>
<th>Description</th>
</tr>
<tr>
<td>maven.aspectwerkz.definition.file.build</td>
<td>Yes</td>
<td>
Location of the AW XML definition file that will be created by the
attribute compilation (when calling the
<code>aspectwerkz:attributec</code> goal). This is only used in
<code>xmldef</code> mode. Defaults to
<code>${maven.build.dir}/aspectwerkz.xml</code>.
</td>
</tr>
<tr>
<td>maven.aspectwerkz.definition.file.merge</td>
<td>Yes</td>
<td>
Definition file to be merged with the main definition file.
This property is not defined by default.
</td>
</tr>
<tr>
<td>maven.aspectwerkz.uuid</td>
<td>Yes</td>
<td>
UUID to use. If not specified a default one will be
automatically generated. This property is not defined by default.
</td>
</tr>
<tr>
<td>maven.aspectwerkz.transform.filter</td>
<td>Yes</td>
<td>
If set to "no", prevents <code>org.codehaus.aspectwerkz</code> and
related classes (jexl, trove, dom4j...) from being instrumented.
Defaults to <code>no</code>.
</td>
</tr>
</table>
</section>
</body>
</document>
-65
View File
@@ -1,65 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project
xmlns:j="jelly:core"
xmlns:ant="jelly:ant"
xmlns:define="jelly:define">
<define:taglib uri="caller">
<!-- Example of usage:
<caller:call goalInterface="compile-java"/>
-->
<define:tag name="call">
<j:set var="callProperty" value="maven.caller.call.${goalInterface}"/>
<!-- Search first in the caller's context -->
<j:set var="goalName"
value="${context.findVariable(callProperty)}"/>
<j:if test="${goalName == null}">
<!-- Search in this plugin context -->
<j:set var="goalName"
value="${pom.getPluginContext('maven-caller-plugin').findVariable(callProperty)}"/>
</j:if>
<j:if test="${goalName == null}">
<ant:fail message="Property [maven.caller.call.${goalInterface}] is not defined"/>
</j:if>
<attainGoal name="${goalName}"/>
</define:tag>
<!-- Example of usage:
<caller:set goalInterface="compile-java" goal="aspectj:compile"/>
-->
<define:tag name="set">
<j:set var="setProperty" value="maven.caller.call.${goalInterface}"/>
<j:set var="${setProperty}" value="${goal}"/>
</define:tag>
</define:taglib>
</project>
-23
View File
@@ -1,23 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# List of Well-Known Goal Interface (WKGI).
#
# compile-java : compile the source code in ${maven.compile.src.set} (i.e. the
# sources in ${pom.build.sourceDirectory}).
# Default implementation goals for the WKGIs
maven.caller.call.compile-java = java:compile
-19
View File
@@ -1,19 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# -------------------------------------------------------------------
# P R O J E C T P R O P E R T I E S
# -------------------------------------------------------------------
-63
View File
@@ -1,63 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project>
<extend>../plugin-parent/project.xml</extend>
<pomVersion>3</pomVersion>
<id>maven-caller-plugin</id>
<name>Maven Caller Plugin</name>
<currentVersion>1.1</currentVersion>
<description>Interface to isolate calls between plugins</description>
<shortDescription>Maven Caller plugin</shortDescription>
<url>http://maven.apache.org/reference/plugins/caller/</url>
<issueTrackingUrl>http://jira.codehaus.org/browse/MPCALLER</issueTrackingUrl>
<siteDirectory>/www/maven.apache.org/reference/plugins/caller/</siteDirectory>
<repository>
<connection>scm:svn:http://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/caller/</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/caller/</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/maven/maven-1/plugins/trunk/caller/</url>
</repository>
<versions>
<version>
<id>1.0</id>
<name>1.0</name>
<tag>MAVEN_CALLER_1_0</tag>
</version>
<version>
<id>1.1</id>
<name>1.1</name>
<tag>MAVEN_CALLER_1_1</tag>
</version>
</versions>
<developers>
<developer>
<name>Vincent Massol</name>
<id>vmassol</id>
<email>vmassol@pivolis.com</email>
<organization>Pivolis</organization>
<roles>
<role>Creator</role>
<role>Developer</role>
<role>Release Manager</role>
</roles>
</developer>
</developers>
<dependencies/>
</project>
-32
View File
@@ -1,32 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Caller Plugin</title>
<author email="vmassol@apache.org">Vincent Massol</author>
</properties>
<body>
<release version="1.1" date="2004-05-15"></release>
<release version="1.0" date="2003-11-16">
<action dev="vmassol" type="add">Initial creation of plugin.</action>
</release>
</body>
</document>
-52
View File
@@ -1,52 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Maven Caller plugin goals</title>
<author email="vmassol@apache.org">Vincent Massol</author>
</properties>
<body>
<section name="Goals">
<table>
<tr><th>Goal</th><th>Description</th></tr>
<tr>
<td>call</td>
<td>
Call a Well-Known Goal Interface (WKGI). For example
<code>&lt;caller:call goalInterface="compile-java"/&gt;</code>.
The list of WKGIs are found on the
<a href="properties.html">properties page</a>.
</td>
</tr>
<tr>
<td>set</td>
<td>
Rewire a WKGI implementation. For example
<code>&lt;caller:set goalInterface="compile-java" goal="aspectj:compile"/&gt;</code>.
You can also directly set the corresponding Maven property:
<code>maven.caller.call.[WKGI name]</code>.
</td>
</tr>
</table>
</section>
</body>
</document>
-79
View File
@@ -1,79 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Maven Caller plugin</title>
<author email="vmassol@apache.org">Vincent Massol</author>
</properties>
<body>
<section name="Maven Caller Plug-in">
<p>
The Caller plugin is an interface abstraction for goals. It defines
several Well-Known Goal Interfaces (WKGI). This allows a plugin
to call another plugin through this Caller plugin. The benefit is
that it is then possible to rewire the implementation of a WKGI.
</p>
<p>
Here's a typical scenario. Imagine you wish to implement an aspectj
plugin. This plugin will compile the Java sources using the Aspectj
compiler. However, the project you wish to use the aspectj plugin on
is a webapp and thus you will need call the <code>war:war</code>.
Alas, the <code>war:war</code> goal has a hard-wired call to
<code>java:compile</code>. What you would like is redirect this call
to your <code>aspectj:compile</code> goal. The solution: the Caller
plugin.
</p>
<p>
Here's what you would write. In the war plugin's
<code>plugin.jelly</code>, you would replace the call to
</p>
<source><![CDATA[
<attainGoal name="java:compile"/>
]]></source>
<p>
by
</p>
<source><![CDATA[
<caller:call goalInterface="compile-java"/>
]]></source>
<p>
Then, in your Aspectj plugin, you would call
</p>
<source><![CDATA[
<caller:set goalInterface="compile-java" goal="aspectj:compile"/>
]]></source>
<p>
Thus, when, as a user you will call the <code>war:war</code>
goal, your <code>aspectj:compile</code> goal will be called.
</p>
<p>
For more information on the functionality provided by this plugin,
please see the <a href="goals.html">Goals</a> document.
</p>
<p>
For more information on how to customise the functionality provided
by this plugin, please see the <a href="properties.html">properties</a>
document.
</p>
</section>
</body>
</document>
-35
View File
@@ -1,35 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project name="Maven Caller Plugin">
<title>Maven Caller Plugin</title>
<author email="vmassol@apache.org">Vincent Massol</author>
<body>
<links>
<item name="Maven" href="http://maven.apache.org/"/>
</links>
<menu name="Overview">
<item name="Goals" href="/goals.html" />
<item name="Properties" href="/properties.html" />
</menu>
</body>
</project>
-46
View File
@@ -1,46 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Maven Caller plugin properties</title>
<author email="vmassol@apache.org">Vincent Massol</author>
</properties>
<body>
<section name="Maven Caller plugin settings">
<table>
<tr>
<th>Property name</th>
<th>Optional?</th>
<th>Description</th>
</tr>
<tr>
<td>maven.caller.call.compile-java</td>
<td>Yes</td>
<td>
Defines the implementing goal for the "compile-java" WKGI.
The default value is <code>java:compile</code>.
</td>
</tr>
</table>
</section>
</body>
</document>
-60
View File
@@ -1,60 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project xmlns:j="jelly:core"
xmlns:ant="jelly:ant">
<!-- ================================================================== -->
<!-- S I M P L E D O C B O O K D O C U M E N T A T I O N -->
<!-- ================================================================== -->
<goal
name="docbook:transform"
prereqs="xdoc:init"
description="Transform any docbook-simple source into xdocs for later use">
<j:set var="genDocs" value="${maven.gen.docs}"/>
${systemScope.setProperty('javax.xml.transform.TransformerFactory','org.apache.xalan.processor.TransformerFactoryImpl')}
<j:set var="dtd" value="${maven.docbook.dtd}"/>
<j:if test="${empty(dtd)}">
<ant:style
basedir="${maven.docbook.src}"
destdir="${genDocs}" extension=".xml"
style="${plugin.resources}/docbook2document.xsl"
includes="**/*.xml, **/*.sgml"
/>
</j:if>
<j:if test="${!empty(dtd)}">
<echo>Using offline DocBook DTD ${maven.docbook.dtd}</echo>
<ant:style
basedir="${maven.docbook.src}"
destdir="${genDocs}" extension=".xml"
style="${plugin.resources}/docbook2document.xsl"
includes="**/*.xml, **/*.sgml">
<ant:xmlcatalog id="cat">
<ant:dtd
publicId="-//OASIS//DTD DocBook XML V4.1.2//EN"
location="${maven.docbook.dtd}"/>
</ant:xmlcatalog>
</ant:style>
</j:if>
</goal>
</project>
-26
View File
@@ -1,26 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# -------------------------------------------------------------------
# P L U G I N P R O P E R I E S
# -------------------------------------------------------------------
# DocBook plugin.
# -------------------------------------------------------------------
maven.docbook.src=${maven.src.dir}/docbook
#maven.docbook.dtd=
-19
View File
@@ -1,19 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# -------------------------------------------------------------------
# P R O J E C T P R O P E R T I E S
# -------------------------------------------------------------------
-71
View File
@@ -1,71 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project>
<extend>../plugin-parent/project.xml</extend>
<pomVersion>3</pomVersion>
<id>maven-docbook-plugin</id>
<name>Maven DocBook Plugin</name>
<currentVersion>1.2</currentVersion>
<shortDescription>Convert docbook to xdoc</shortDescription>
<url>http://maven.apache.org/reference/plugins/docbook/</url>
<issueTrackingUrl>http://jira.codehaus.org/browse/MPDOCBOOK</issueTrackingUrl>
<siteDirectory>/www/maven.apache.org/reference/plugins/docbook/</siteDirectory>
<repository>
<connection>scm:svn:http://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/docbook/</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/docbook/</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/maven/maven-1/plugins/trunk/docbook/</url>
</repository>
<versions>
<version>
<id>1.1</id>
<name>1.1</name>
<tag>MAVEN_DOCBOOK_1_1</tag>
</version>
<version>
<id>1.2</id>
<name>1.2</name>
<tag>MAVEN_DOCBOOK_1_2</tag>
</version>
</versions>
<developers>
<developer>
<name>Jason van Zyl</name>
<id>jvanzyl</id>
<email>jason@zenplex.com</email>
<organization>Zenplex</organization>
<roles>
<role>Architect</role>
<role>Release Manager</role>
</roles>
</developer>
</developers>
<dependencies>
<dependency>
<groupId>xalan</groupId>
<artifactId>xalan</artifactId>
<version>2.4.1</version>
<url>http://xml.apache.org/xalan-j/</url>
<properties>
<classloader>root</classloader>
</properties>
</dependency>
</dependencies>
</project>
@@ -1,347 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<!--
Author: Berin Loritsch (bloritsch@infoplanning.com)
Author: Peter Donald (donaldp@apache.org)
Author: dIon Gillard (trongus@yahoo.com)
Version: $Id$
FIXME: - Doesn't handle attributes of informaltable and other docbook
elements
- currently doesn't process all docbook elements
-->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<!-- used for cross ref links (xref) -->
<xsl:key name="id" match="*" use="@id"/>
<xsl:template match="/">
<xsl:comment>This document generated by docbook2document.xsl</xsl:comment>
<xsl:apply-templates />
</xsl:template>
<!--
top level components create document, properties element and start body
-->
<xsl:template match="article">
<document>
<properties>
<xsl:apply-templates select="title"/>
<xsl:apply-templates select="author"/>
</properties>
<body>
<xsl:apply-templates />
<xsl:apply-templates select="//footnote" mode="base"/>
</body>
</document>
</xsl:template>
<xsl:template match="title">
<title>
<xsl:value-of select="title"/>
<xsl:if test="../subtitle">
(<xsl:value-of select="../subtitle"/>)
</xsl:if>
<!-- ignoring titleabbrev -->
</title>
</xsl:template>
<!-- author block -->
<xsl:template match="author">
<author email="{authorblurb/para/email}">
<xsl:if test="honorific"><xsl:value-of select="honorific"/>. </xsl:if>
<xsl:if test="firstname">
<xsl:value-of select="firstname"/>
<xsl:text> </xsl:text>
</xsl:if>
<xsl:value-of select="surname"/>
<xsl:apply-templates />
</author>
</xsl:template>
<xsl:template match="affiliation">
<xsl:if test="jobtitle">
(Job title: <xsl:value-of select="jobtitle"/>
</xsl:if>
<xsl:if test="orgname">
, <i>Organisation:</i> <xsl:value-of select="orgname"/>)
</xsl:if>
</xsl:template>
<xsl:template match="authorblurb">
<xsl:text>Bio</xsl:text>
<ul>
<xsl:apply-templates/>
</ul>
</xsl:template>
<xsl:template match="honorific|firstname|surname|orgdiv|orgname|shortaffil|jobtitle"/>
<!-- revision history -->
<xsl:template match="revhistory">
<section name="Revision History">
<xsl:variable name="unique-revisions"
select="revision[not(revnumber=preceding-sibling::revision/revnumber)]/revnumber"/>
<xsl:variable name="base" select="."/>
<xsl:for-each select="$unique-revisions">
<p>Revision <xsl:value-of select="."/>
(<xsl:value-of select="$base/revision[revnumber=current()]/date"/>)
</p>
<ul>
<xsl:apply-templates select="$base/revision[revnumber=current()]"/>
</ul>
</xsl:for-each>
</section>
</xsl:template>
<xsl:template match="revision">
<li>
<xsl:choose>
<xsl:when test="@revisionflag='added'">
<img align="absmiddle" alt="added" border="0" src="images/add.jpg"/>
</xsl:when>
<xsl:when test="@revisionflag='changed'">
<img align="absmiddle" alt="changed" border="0" src="images/update.jpg"/>
</xsl:when>
<xsl:when test="@revisionflag='deleted'">
<img align="absmiddle" alt="deleted" border="0" src="images/remove.jpg"/>
</xsl:when>
<xsl:when test="@revisionflag='off'">
<img align="absmiddle" alt="off" border="0" src="images/fix.jpg"/>
</xsl:when>
<xsl:otherwise>
<img align="absmiddle" alt="changed" border="0" src="images/update.jpg"/>
</xsl:otherwise>
</xsl:choose>
<xsl:value-of select="revremark"/>
<xsl:text> (</xsl:text><xsl:value-of select="authorinitials"/><xsl:text>)</xsl:text>
</li>
</xsl:template>
<xsl:template match="revnumber|revremark|authorinitials|date"/>
<xsl:template match="section">
<xsl:call-template name="section-common">
<xsl:with-param name="level" select="count(ancestor::section)+1"/>
</xsl:call-template>
</xsl:template>
<!-- sections - and nested -->
<xsl:template name="section-common">
<xsl:param name="level"/>
<xsl:choose>
<xsl:when test="number($level)=1">
<xsl:if test="@id"><a name="{@id}"> </a></xsl:if>
<section name="{title}">
<xsl:apply-templates/>
</section>
</xsl:when>
<xsl:when test="number($level)=2">
<xsl:if test="@id"><a name="{@id}"> </a></xsl:if>
<subsection name="{title}">
<xsl:apply-templates/>
</subsection>
</xsl:when>
<xsl:otherwise>
<xsl:if test="@id"><a name="{@id}"> </a></xsl:if>
<p><a name="{@name}"><strong><xsl:value-of select="title"/></strong></a><br />
<xsl:apply-templates/>
</p>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<!-- paragraphs/textual elements -->
<xsl:template match="para">
<p><xsl:apply-templates/></p>
</xsl:template>
<xsl:template match="emphasis"><em><xsl:apply-templates/></em></xsl:template>
<xsl:template match="example">
<p><pre><xsl:apply-templates/></pre></p>
</xsl:template>
<!-- book details -->
<xsl:template match="bookinfo">
<b><xsl:value-of select="edition"/></b><xsl:text> </xsl:text>
<i>pub. <xsl:value-of select="pubdate"/></i>
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="dedication">
<b>Dedication</b>
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="edition|pubdate|year|holder"/>
<xsl:template match="copyright">
<p>Copyright &#x00A9;<xsl:value-of select="year"/> by
<xsl:value-of select="holder"/>.<br/>
<i>All rights reserved.</i>
</p>
</xsl:template>
<xsl:template match="legalnotice">
<p>Legal Notice</p>
<xsl:apply-templates/>
</xsl:template>
<!-- lists etc -->
<xsl:template match="programlisting">
<source><xsl:apply-templates/></source>
</xsl:template>
<xsl:template match="orderedlist"><ol><xsl:apply-templates/></ol></xsl:template>
<xsl:template match="listitem|member"><li><xsl:apply-templates/></li></xsl:template>
<xsl:template match="itemizedlist|simplelist"><ul><xsl:apply-templates/></ul></xsl:template>
<xsl:template match="classname|function|parameter"><code><xsl:apply-templates/><xsl:if test="name(.)='function'"><xsl:text>()</xsl:text></xsl:if></code></xsl:template>
<xsl:template match="blockquote">
<xsl:if test="title">
<blockquote><xsl:value-of select="title"/><br/>
<xsl:apply-templates/>
</blockquote>
</xsl:if>
<p></p>
</xsl:template>
<xsl:template match="warning">
<xsl:if test="title">
<p><em><xsl:value-of select="title"/></em></p>
</xsl:if>
<p><xsl:apply-templates/></p>
</xsl:template>
<!-- links -->
<xsl:template match="ulink"><a href="{@url}"><xsl:apply-templates/></a></xsl:template>
<xsl:template match="xref">
<!--
make a link to the linkend specified, prefixing with a # since it's
internal to the generated html. The text of the link should be either
a) element pointed to by linkend's xreflabel or
b) endterm content
-->
<xsl:variable name="link-targets" select="key('id',@linkend)"/>
<xsl:variable name="link-target" select="$link-targets[1]"/>
<a href="#{@linkend}">
<!-- xreflabel of target goes here-->
<xsl:choose>
<xsl:when test="$link-target/@xreflabel">
<xsl:value-of select="$link-target/@xreflabel"/>
</xsl:when>
<xsl:otherwise>
<xsl:variable name="endterm-targets" select="key('id',@endterm)"/>
<xsl:variable name="endterm-target" select="$endterm-targets[1]"/>
<xsl:apply-templates select="$endterm-target"/>
</xsl:otherwise>
</xsl:choose>
</a>
</xsl:template>
<!-- tables, footnotes etc -->
<xsl:template match="footnote">
<sup><a href="#{generate-id(.)}"><xsl:value-of select="generate-id(.)"/></a>
</sup>
</xsl:template>
<xsl:template match="footnote" mode="base">
<a name="{generate-id(.)}"/><xsl:value-of select="generate-id(.)"/><xsl:text>) </xsl:text><i><xsl:value-of select="."/></i>
</xsl:template>
<xsl:template match="figure">
<p>Figure: <xsl:value-of select="title"/></p>
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="graphic">
<img border="0" alt="{@srccredit}" src="{@fileref}"/>
<xsl:if test="@srccredit">
<ul><li><xsl:value-of select="@srccredit"/></li></ul>
</xsl:if>
</xsl:template>
<xsl:template match="table"><table><xsl:apply-templates/></table></xsl:template>
<!-- FIXME: support attributes of informal table here -->
<xsl:template match="informaltable">
<table><xsl:apply-templates/></table>
</xsl:template>
<xsl:template match="tgroup">
<xsl:apply-templates select="thead|tbody|tfoot"/>
</xsl:template>
<xsl:template match="thead">
<xsl:apply-templates select="row" mode="head"/>
</xsl:template>
<xsl:template match="row" mode="head">
<tr><xsl:apply-templates select="entry" mode="head"/></tr>
</xsl:template>
<xsl:template match="row">
<tr><xsl:apply-templates/></tr>
</xsl:template>
<xsl:template match="tbody|tfoot">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="entry" mode="head">
<th><xsl:apply-templates/></th>
</xsl:template>
<xsl:template match="entry">
<td><xsl:apply-templates/></td>
</xsl:template>
<xsl:template match="firstterm">
<i><xsl:apply-templates/></i>
</xsl:template>
<xsl:template match="remark">
<p><b>Note:</b> <xsl:apply-templates/></p>
</xsl:template>
<xsl:template match="sgmltag">
<code><xsl:apply-templates/></code>
</xsl:template>
<xsl:template match="trademark"><xsl:apply-templates/><sup>TM</sup></xsl:template>
<xsl:template match="node()|@*" priority="-1">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
-163
View File
@@ -1,163 +0,0 @@
<?xml version='1.0' encoding='UTF-8' ?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<?xml-stylesheet type="text/css"
href="file:/usr/java/xxe-m13p1-bin/css/docbook41.css"
?>
<?xml-stylesheet type="text/css"
href="file:/usr/java/xxe-m13p1-bin/css/docbook.css"
title="Previous docbook stylesheet"
alternate="yes"
?>
<!-- Document created on: Jun 15, 2002 -->
<!DOCTYPE article PUBLIC "-//OASIS//DTD Simplified DocBook XML V1.0CR2//EN"
"http://www.oasis-open.org/docbook/xml/simple/1.0CR2/sdocbook.dtd">
<article id="index">
<articleinfo>
<title>Geotools2 Developer Guide</title>
<author>
<firstname>Cameron</firstname>
<surname>Shorter</surname>
</author>
<date>22 May 2002</date>
<abstract>
<para>Guide to aid <filename>geotools2</filename> development.</para>
</abstract>
</articleinfo>
<section id="intro">
<title>Introduction</title>
<para>This document aims to help new geotools developers get up to speed
and track practices of existing developers in order to keep the project
consistent.</para>
<para>If you feel something is missing, feel free to contribute a new
section.</para>
</section>
<section id="design">
<title>Design</title>
<figure>
<title>Geotools Logo</title>
<mediaobject>
<imageobject>
<imagedata fileref="images/developersguide/geotools_logo.png"
format="PNG"/>
</imageobject>
<textobject><phrase>Geotools Logo</phrase></textobject>
</mediaobject>
</figure>
<para>To do: Explain</para><itemizedlist><listitem><para>Key design structure
(core interfaces, data sources, rendering, tools)</para></listitem><listitem><para>Design
Drivers (Our design goals: modular, derives structure from netbeans,
support multiple version of java, ..)</para></listitem><listitem><para>Directory
structure</para></listitem><listitem><para></para></listitem></itemizedlist>
</section>
<section id="development">
<title>Development</title>
<section id="building">
<title>Building</title>
<para>To do:</para><itemizedlist><listitem><para>using ant</para></listitem><listitem><para>what
ant checks</para></listitem><listitem><para>insert the
&#34;howto-build.html&#34; doc into here</para></listitem><listitem><para></para></listitem></itemizedlist>
</section>
<section id="cvs">
<title>Code Versioning (using CVS)</title>
<para>To do:</para><itemizedlist><listitem><para>Point to sourceforge CVS howto
links.</para></listitem><listitem><para>Also point to some HOWTOs for
windows users.</para></listitem><listitem><para>What is acceptable to
commit to CVS, what is not. (Ie, code should compile)</para></listitem><listitem><para>Talk
about version numbering convention, use of branches, etc (if we decide
to do this).</para></listitem></itemizedlist>
<para>To do:</para>
</section>
<section id="CodingStandards">
<title>Coding Standards</title>
<para>To do:</para><itemizedlist><listitem><para>Using Sun&#39;s coding
standard, need to note any exceptions to it.</para></listitem><listitem><para>Note
the auto checking of coding standards.</para></listitem><listitem><para>Javadocs</para></listitem><listitem><para></para></listitem></itemizedlist>
</section>
<section id="templates">
<title>Template File</title>
<para>To do:</para><itemizedlist><listitem><para>Provide a template file.</para></listitem><listitem><para>Link
it to sections explaining the different parts of the template.</para></listitem><listitem><para>Include
headers, footers, example logging, example coding style, CVS key tags,
sample javadocs.</para></listitem><listitem><para></para></listitem></itemizedlist>
</section>
<section id="logging">
<title>Logging</title>
<para>To do:</para><itemizedlist><listitem><para>Talk about log4j, links to</para></listitem><listitem><para></para></listitem><listitem><para></para></listitem><listitem><para></para></listitem></itemizedlist>
</section>
<section id="testing">
<title>Testing</title>
<para>To do:</para><itemizedlist><listitem><para>Explain use of junit. Might be
a link to another web site.</para></listitem><listitem><para></para></listitem><listitem><para></para></listitem><listitem><para></para></listitem></itemizedlist>
</section>
<section>
<title>Documentation</title>
<para>To do:</para><itemizedlist><listitem><para>Talk about docbook, why we
decided to use it (most commonly used format of LDP, converts to
multiple formats, tools coming which can support it. Need to mention
which version of docbook we are using.</para></listitem><listitem><para>Mention
tools that can be used.</para></listitem><listitem><para>Links to
docbook references.</para></listitem><listitem><para>Process for
updating this document.</para></listitem><listitem><para>How to use ant
tools to build doc.</para></listitem></itemizedlist>
</section>
</section>
<section id="tools">
<title>Development Tools</title>
<section id="netbeans">
<title>Netbeans</title>
<para>To do:</para><itemizedlist><listitem><para>Where to get it.</para></listitem><listitem><para>Aim
is to make geotools a module within Netbeans</para></listitem><listitem><para>How
to setup getools to fit the multiple directory structure</para></listitem><listitem><para>The
extra Netbeans modules that are useful and should be downloaded.</para></listitem></itemizedlist>
</section>
</section>
</article>
-39
View File
@@ -1,39 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Changes</title>
<author email="dion@apache.org">dIon Gillard</author>
</properties>
<body>
<release version="1.2" date="2004-05-15">
</release>
<release version="1.1" date="2003-09-29">
<action dev="dion" type="update">update to use maven.docs.*/maven.gen.docs</action>
<action dev="dion" type="update">update to xalan 2.4.1</action>
<action dev="dion" type="update">update to commons-lang 1.0.1</action>
<action dev="dion" type="fix" issue="MAVEN-436">Applied Maven-436 to allow docbook dtds offline</action>
</release>
<release version="1.0" date="2002-07-14">
<action dev="dion" type="add">Original release for Maven 1.0-beta7</action>
</release>
</body>
</document>
-37
View File
@@ -1,37 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Maven DocBook Plug-in Goals</title>
<author email="dion@apache.org">dIon Gillard</author>
</properties>
<body>
<goals>
<goal>
<name>docbook:transform</name>
<description>
Transform any docbook-simple source into xdocs for later use
</description>
</goal>
</goals>
</body>
</document>
-38
View File
@@ -1,38 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Maven Docbook Plug-in</title>
<author email="jason@zenplex.com">Jason van Zyl</author>
</properties>
<body>
<section name="Maven Docbook Plug-in">
<p>
This plugin allows you to write your project documentation in the
Docbook format.
</p>
<p>
<strong>Warning: </strong> This plugin has had limited testing
</p>
</section>
</body>
</document>
-35
View File
@@ -1,35 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project name="Maven DocBook Plugin">
<title>Maven DocBook Plugin</title>
<body>
<links>
<item name="Maven" href="http://maven.apache.org/"/>
<item name="Simple DocBook"
href="http://www.oasis-open.org/docbook/xml/simple/"/>
</links>
<menu name="Overview">
<item name="Goals" href="/goals.html" />
<item name="Properties" href="/properties.html" />
</menu>
</body>
</project>
-57
View File
@@ -1,57 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Maven DocBook Plugin Properties</title>
<author email="dion@apache.org">dIon Gillard</author>
</properties>
<body>
<section name="Maven DocBook Plugin Settings">
<table>
<tr>
<th>Property name</th>
<th>Optional?</th>
<th>Description</th>
</tr>
<tr>
<td>maven.docbook.src</td>
<td>Yes</td>
<td>
Defaults to <code>${maven.src.dir}/sdocbook</code>. This is the
source directory for the simple docbook xml files
</td>
</tr>
<tr>
<td>maven.docbook.dtd</td>
<td>Yes</td>
<td>
If set, it points to the offline DocBook DTD.
This allows offline transformation and DTD checking.
DocBook DTD is available for download at
<a href="http://www.oasis-open.org/docbook/xml/4.1.2/index.shtml">http://www.oasis-open.org/docbook/xml/4.1.2/index.shtml</a>.
Example value: "/home/msk/docbook-dtd/docbookx.dtd"
</td>
</tr>
</table>
</section>
</body>
</document>
-84
View File
@@ -1,84 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project
xmlns:j="jelly:core"
xmlns:maven="jelly:maven"
xmlns:ant="jelly:ant">
<goal name="jdee"
description="Generate JDEE project file"
prereqs="jdee:generate-project"/>
<!-- Generate project file in basedir -->
<goal name="jdee:generate-project"
description="Generate project file in basedir">
<j:set var="projectFile"
value="${context.getVariable('maven.jdee.project.file')}" />
<j:if test="${projectFile == null}">
<j:set var="projectFile" value="prj.el"/>
</j:if>
<ant:echo>Generating file ${projectFile} ...</ant:echo>
<j:file name="${basedir}/${projectFile}" prettyPrint="false"
omitXmlDeclaration ="true" xmlns="dummy">
;; generated by jdee plugin (see http://maven.apache.org/reference/plugins/jdee/)
(jde-project-file-version "1.0")
(jde-set-variables
(quote (jde-project-name "${pom.artifactId}"))
(quote (jde-project-file-name "${maven.jdee.project.file}"))
<j:if test="${sourcesPresent}">
<maven:makeRelativePath var="srcDir" basedir="${basedir}" path="${pom.build.sourceDirectory}" />
(quote (jde-sourcepath (quote ("./${srcDir}"))))
<j:whitespace />
</j:if>
<maven:makeRelativePath path="${maven.build.dest}" var="mavenBuildDest" separator="/" basedir="${basedir}" />
<maven:makeRelativePath path="${maven.build.dir}" var="mavenBuildDir" separator="/" basedir="${basedir}" />
<maven:makeRelativePath path="${maven.docs.dest}" var="mavenDocsDest" separator="/" basedir="${basedir}" />
(quote (jde-compile-option-directory "./${mavenBuildDest}"))
(quote (jde-javadoc-gen-destination-directory "./${mavenDocsDest}/apidocs"))
(quote (jde-project-file-name "${projectFile}"))
(quote (jde-javadoc-gen-window-title "${pom.name} - ${pom.organization} (${pom.inceptionYear})"))
(quote (jde-import-excluded-packages (quote ("${mavenBuildDir}.*"))))
<j:set var="mainClass"
value="${context.getVariable('maven.jdee.application.class')}" />
<j:if test="${mainClass != null}">
(quote (jde-run-application-class "${mainClass}"))
<j:whitespace> </j:whitespace>
</j:if>
(quote (jde-global-classpath (quote ("./${mavenBuildDest}"
<j:if test="${unitTestSourcesPresent}">
<maven:makeRelativePath var="srcDir" basedir="${basedir}" path="${pom.build.unitTestSourceDirectory}" />
"./${srcDir}" <j:whitespace />
</j:if>
<!-- now iterate through all dependencies -->
<j:forEach var="lib" items="${pom.artifacts}">
"${lib.path}" <j:whitespace />
</j:forEach>
)))))
</j:file>
<ant:echo>Now reload the created project file (${projectFile}) in JDEE</ant:echo>
</goal>
</project>
-27
View File
@@ -1,27 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# -------------------------------------------------------------------
# P L U G I N P R O P E R I E S
# -------------------------------------------------------------------
# JDEE plugin.
# -------------------------------------------------------------------
#
#maven.jdee.application.class = de.mydomain.mypackage.Main
# the name of the generated project file
#maven.jdee.project.file = prj.el
-19
View File
@@ -1,19 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# -------------------------------------------------------------------
# P R O J E C T P R O P E R T I E S
# -------------------------------------------------------------------
-64
View File
@@ -1,64 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project>
<extend>../plugin-parent/project.xml</extend>
<pomVersion>3</pomVersion>
<id>maven-jdee-plugin</id>
<name>Maven JDEE Plug-in</name>
<currentVersion>1.1</currentVersion>
<description>A plugin to create a project file to be used within the
<!--
<a href="http://jdee.sunsite.dk/">Java Developement Enviroment for Emacw</a>
-->
</description>
<shortDescription>JDEE Plugin for Maven</shortDescription>
<url>http://maven.apache.org/reference/plugins/jdee/</url>
<issueTrackingUrl>http://jira.codehaus.org/browse/MPJDEE</issueTrackingUrl>
<siteDirectory>/www/maven.apache.org/reference/plugins/jdee/</siteDirectory>
<repository>
<connection>scm:svn:http://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/jdee/</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/jdee/</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/maven/maven-1/plugins/trunk/jdee/</url>
</repository>
<versions>
<version>
<id>1.0</id>
<name>1.0</name>
<tag>MAVEN_JDEE_1_0</tag>
</version>
<version>
<id>1.1</id>
<name>1.1</name>
<tag>MAVEN_JDEE_1_1</tag>
</version>
</versions>
<developers>
<developer>
<name>Juergen Heidak</name>
<id>jh</id>
<email>Juergen@Heidak.de</email>
<organization>CURSOR Software AG</organization>
<roles>
<role>Java Developer</role>
</roles>
</developer>
</developers>
</project>
-34
View File
@@ -1,34 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Changes</title>
<author email="juergen@heidak.de">Juergen Heidak</author>
</properties>
<body>
<release version="1.0" date="2004-03-10">
<action dev="brett" type="update">Path changes.</action>
</release>
<release version="1.0-beta-1" date="2003-04-02">
<action dev="evenisse" type="add">Initial version.</action>
</release>
</body>
</document>
-46
View File
@@ -1,46 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>JDEE Plugin Goals</title>
<author email="evenisse@ifrance.com">Emmanuel Venisse</author>
</properties>
<body>
<goals>
<goal>
<name>jdee</name>
<description>
The default goal. This goal simply executes the
<a href="#jdee:generate-project">jdee:generate-project</a> goal
</description>
</goal>
<goal>
<name>jdee:generate-project</name>
<description>
Generate project file.
</description>
</goal>
</goals>
</body>
</document>
-102
View File
@@ -1,102 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Maven JDEE Plugin</title>
<author email="juergen@heidak.de">Juergen Heidak</author>
</properties>
<body>
<section name="Maven JDEE Plugin">
<p>
A plugin to create a project file to be used by
<a href="http://jdee.sunsite.dk">JDEE</a> (Java Development
Enviroment for Emacs) to make it a little easier for
Emacs users to switch to maven.
</p>
<p>
The most important part is the initialization of
<code>jde-global-classpath</code> variable. The generated project file
has this variable set to contain all dependencies (normally jarfiles)
as listed in the project descriptor.
</p>
<p>
The following table can give you an overview about the mapping between
<em>Maven</em> properties and <em>JDEE</em> variables:
<table>
<tr>
<th>Maven property/ constant value</th>
<th>JDEE variable</th>
</tr>
<tr>
<td><code>pom.artifactId</code></td>
<td><code>jde-project-name</code></td>
</tr>
<tr>
<td>
<code>maven.jdee.project.file</code> (see
<a href="properties.html">Properties</a> for details)
</td>
<td><code>jde-project-file-name</code></td>
</tr>
<tr>
<td><code>pom.build.sourceDirectory</code></td>
<td><code>jde-sourcepath</code></td>
</tr>
<tr>
<td><code>./target/classes</code></td>
<td><code>jde-compile-option-directory</code></td>
</tr>
<tr>
<td><code>target.classes.*</code></td>
<td>
<code>jde-import-excluded-packages</code>
<p>
Prevent the generated class files from being included into the
list of possible imports.
</p>
</td>
</tr>
<tr>
<td><code>./target/docs/apidocs</code></td>
<td><code>jde-javadoc-gen-destination-directory</code></td>
</tr>
<tr>
<td>
<code>
${pom.name} - ${pom.organization} (${pom.inceptionYear})
</code>
</td>
<td><code>jde-javadoc-gen-window-title</code></td>
</tr>
</table>
</p>
<p>
For more information on the functionality provided by this plugin,
please see the <a href="goals.html">Goals</a> document.
</p>
<p>
This plugin is flexible by providing configurable properties see the
<a href="properties.html">properties</a> for details.
</p>
</section>
</body>
</document>
-35
View File
@@ -1,35 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project name="Maven JDEE Plugin">
<title>Maven JDEE Plugin</title>
<body>
<links>
<item name="Maven" href="http://maven.apache.org/"/>
<item name="JDEE" href="http://jdee.sunsite.dk/"/>
</links>
<menu name="Overview">
<item name="Goals" href="/goals.html" />
<item name="Properties" href="/properties.html" />
<item name="Todos" href="/tasks.html" />
</menu>
</body>
</project>
-57
View File
@@ -1,57 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>JDEE Properties</title>
<author email="juergen@heidak.de">Juergen Heidak</author>
</properties>
<body>
<section name="Eclipse Settings">
<table>
<tr><th>Property</th><th>Optional?</th><th>Description</th></tr>
<tr>
<td>maven.jdee.project.file</td>
<td>Yes</td>
<td>
The name of the generated file default is to <code>prj.el</code>.
<p>
The value of this property is used to determine the filename to
write the project information to. Furthermore the variable
<code>jde-project-name</code> is set (in the project file) to the
value of this property.
</p>
</td>
</tr>
<tr>
<td>maven.jdee.application.class</td>
<td>Yes</td>
<td>
The name of the class that starts the application. If this property
is defined the variable (in the project file)
<code>jde-run-application-class</code> is set to its value if
undefined the variable is left undefined too.
</td>
</tr>
</table>
</section>
</body>
</document>
-50
View File
@@ -1,50 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Maven JDEE Plugin</title>
<author email="juergen@heidak.de">Juergen Heidak</author>
</properties>
<body>
<section name="Todo">
<p>
There are already plugins holding a lot of information we need when
writing the project file. Especially the
<a href="http://maven.apache.org/reference/plugins/javadoc/">javadoc</a>
and the
<a href="http://maven.apache.org/reference/plugins/java/">java</a>
plugin contain several properties that we should reuse.
</p>
<p>
Some examples:
<ul>
<li>maven.compile.deprecation</li>
<li>maven.javadoc.private</li>
<li>maven.javadoc.doctitle</li>
<li>maven.javadoc.destdir </li>
</ul>
At the moment we're using the <code>target</code> directory to direct
the compilation and javadoc output produced by <em>JDEE</em> to.
</p>
</section>
</body>
</document>
-426
View File
@@ -1,426 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project
xmlns:ant="jelly:ant"
xmlns:maven="jelly:maven"
xmlns:j="jelly:core"
xmlns:util="jelly:util">
<!--==================================================================-->
<!-- Generates Jdeveloper IDE files -->
<!--==================================================================-->
<goal name="jdeveloper"
description="Generate JDeveloper project files"
prereqs="jdeveloper:generate-project"/>
<goal name="jdeveloper:generate-project"
prereqs="jdeveloper:scanSources"
description="Generate jdeveloper .jpr">
<ant:echo>Creating ${basedir}/${pom.artifactId}.jpr...</ant:echo>
<!--
We use the JavaSourceTool to get the relative path
-->
<maven:makeRelativePath path="${maven.build.dir}" var="mavenBuildDir" basedir="${basedir}" separator="/" />
<maven:makeRelativePath path="${maven.docs.dest}" var="mavenDocsDest" basedir="${basedir}" separator="/" />
<j:useBean var="javaSourceTool" class="org.apache.maven.jdeveloper.JavaSourceTool"/>
<j:file name="${basedir}/${pom.artifactId}.jpr" prettyPrint="true" xmlns="http://xmlns.oracle.com/jdeveloper/903/jproject" encoding="Cp1252">
<project nselem="project" class="oracle.jdeveloper.model.JProject">
<defaultPackage>${pom.package}</defaultPackage>
<defaultPackages class="java.util.ArrayList">
<Item class="java.lang.String">${pom.package}</Item>
</defaultPackages>
<dependencyList/>
<htmlRootDirectory path="${mavenDocsDest}/" />
<j2eeWebAppName>${maven.jdeveloper.workspace}-${maven.war.final.name}</j2eeWebAppName>
<j2eeWebContextRoot>${maven.jdeveloper.workspace}-${ear.bundle.war.context-root}</j2eeWebContextRoot>
<listOfChildren class="oracle.ide.model.DataList">
<!-- Add Java Sources -->
<j:forEach var="file" items="${javaSourceFiles.iterator()}">
<j:set var="packagePath" value="${javaSourceTool.getPackagePath(file.toString())}"/>
<util:replace var="path" oldChar="\" newChar="/" value="${packagePath}"/>
<Item class="oracle.jdeveloper.model.JavaSourceNode">
<URL path="${pom.build.sourceDirectory}/${path}"/>
</Item>
</j:forEach>
<!-- Add test Sources -->
<j:forEach var="file" items="${unitTestSourceFiles.iterator()}">
<j:set var="packagePath" value="${javaSourceTool.getPackagePath(file.toString())}"/>
<util:replace var="path" oldChar="\" newChar="/" value="${packagePath}"/>
<Item class="oracle.jdeveloper.model.JavaSourceNode">
<URL path="${pom.build.sourceDirectory}/${path}"/>
</Item>
</j:forEach>
<!-- Add integration test Sources -->
<j:forEach var="file" items="${integrationTestSourceFiles.iterator()}">
<j:set var="packagePath" value="${javaSourceTool.getPackagePath(file.toString())}"/>
<util:replace var="path" oldChar="\" newChar="/" value="${packagePath}"/>
<Item class="oracle.jdeveloper.model.JavaSourceNode">
<URL path="${pom.build.sourceDirectory}/${path}"/>
</Item>
</j:forEach>
<j:forEach var="file" items="${javaDocFiles.iterator()}">
<Item class="oracle.jdevimpl.webapp.html.HtmlSourceNode">
<URL path="${file.getPath()}"/>
</Item>
</j:forEach>
</listOfChildren>
<ownerMap/>
<projectDocPath>
<entries class="[Ljava.net.URL;"/>
</projectDocPath>
<projectLibraryList class="oracle.jdeveloper.library.JProjectLibraryList">
<jdkList class="java.util.ArrayList"/>
<libraryList class="java.util.ArrayList">
<j:forEach var="lib" items="${pom.artifacts}">
<j:set var="libentry" value="${maven.jdeveloper.relative.path}/${maven.jdeveloper.maven.home}/repository/${lib.dependency.artifactId}/jars/${lib.name}" trim="true"/>
<Item class="oracle.jdeveloper.library.JLibrary">
<defaultLibraryDefinition>
<JDKVersion/>
<classPath>
<entries>
<Item path="${libentry}" jar-entry=""/>
</entries>
</classPath>
<docPath>
<entries class="[Ljava.net.URL;"/>
</docPath>
<locked>false</locked>
<sourcePath>
<entries class="[Ljava.net.URL;"/>
</sourcePath>
</defaultLibraryDefinition>
<definitionList class="java.util.ArrayList"/>
<locked>false</locked>
<name>${lib.dependency.artifactId}</name>
</Item>
</j:forEach>
</libraryList>
</projectLibraryList>
<projectSettings>
<activeConfigName>Development</activeConfigName>
<commonData class="java.util.HashMap">
<Item>
<Key>oracle.bm.commonIde.data.project.ModelerProjectSettings</Key>
<Value class="oracle.bm.commonIde.data.project.ModelerProjectSettings">
<modelersPath>
<entries>
<Item path="model/"/>
</entries>
</modelersPath>
</Value>
</Item>
<Item>
<Key>oracle.jdeveloper.compiler.ant.AntConfiguration</Key>
<Value class="oracle.jdeveloper.compiler.ant.AntConfiguration">
<arguments class="java.lang.String"/>
<makeTarget/>
<projectBuildfile/>
<rebuildTarget/>
<showOutput>true</showOutput>
</Value>
</Item>
</commonData>
<configurations class="java.util.TreeMap">
<Item>
<Key>Development</Key>
<Value class="oracle.jdeveloper.model.JProjectConfiguration">
<configData class="java.util.HashMap">
<Item>
<Key>oracle.jdeveloper.compiler.OjcConfiguration</Key>
<Value class="oracle.jdeveloper.compiler.OjcConfiguration">
<assertionsEnabled>true</assertionsEnabled>
<copyRes>
<Item>.gif</Item>
<Item>.properties</Item>
<Item>.jpg</Item>
<Item>.jpeg</Item>
<Item>.xml</Item>
<Item>-apf.xml</Item>
</copyRes>
<currentEncoding>Cp1252</currentEncoding>
<debugInformation>true</debugInformation>
<excludedClasses class="[Ljava.lang.String;"/>
<obfuscate>false</obfuscate>
<showCompileProgress>false</showCompileProgress>
<showDeprecations>true</showDeprecations>
<showObjectDotStaticWarnings>false</showObjectDotStaticWarnings>
<showPartialImportWarnings>false</showPartialImportWarnings>
<showSelfDeprecations>true</showSelfDeprecations>
<showUnusedImportWarnings>false</showUnusedImportWarnings>
<showWarnings>true</showWarnings>
<target>Default</target>
<updateImports>false</updateImports>
<updateZipJarImports>false</updateZipJarImports>
</Value>
</Item>
<Item>
<Key>oracle.jdeveloper.javadoc.JProjectJavadoc</Key>
<Value class="oracle.jdeveloper.javadoc.JProjectJavadoc">
<generateAuthor>false</generateAuthor>
<generateDeprecated>true</generateDeprecated>
<generateIndex>true</generateIndex>
<generateNavbar>true</generateNavbar>
<generateSince>true</generateSince>
<generateTree>true</generateTree>
<generateVersion>false</generateVersion>
<heapSize>32</heapSize>
<miscOptions class="java.lang.String"/>
<oneOneFormat>false</oneOneFormat>
<outputDirectory path="${mavenDocsDest}/jdeveloper-javadoc/"/>
<scope>-protected</scope>
</Value>
</Item>
<Item>
<Key>oracle.jdeveloper.runner.RunConfiguration</Key>
<Value class="oracle.jdeveloper.runner.RunConfiguration">
<VMName>client</VMName>
<allowInput>false</allowInput>
<alwaysUseTarget>false</alwaysUseTarget>
<clearLogBeforeRun>false</clearLogBeforeRun>
<compileBeforeRun>true</compileBeforeRun>
<connectionName/>
<javaOptions class="java.lang.String"/>
<logCommand>true</logCommand>
<logError>true</logError>
<logExit>true</logExit>
<logOutput>true</logOutput>
<programArguments class="java.lang.String"/>
<runActiveFile>true</runActiveFile>
<runDirectoryURL/>
<targetURL/>
<useProxy>true</useProxy>
</Value>
</Item>
<Item>
<Key>oracle.jdevimpl.config.JProjectLibraries</Key>
<Value class="oracle.jdevimpl.config.JProjectLibraries">
<jdkName>j2sdk 1.4.1</jdkName>
<jdkVersionNumber>1.4.1</jdkVersionNumber>
<libraries>
<j:set var="path" trim="true">
JDeveloper Runtime
<j:forEach var="dep" items="${pom.dependencies}">
;${dep.artifactId}
</j:forEach>
</j:set>
${path}
</libraries>
</Value>
</Item>
<Item>
<Key>oracle.jdevimpl.config.JProjectPaths</Key>
<Value class="oracle.jdevimpl.config.JProjectPaths">
<additionalClassPath>
<entries class="[Ljava.net.URL;"/>
</additionalClassPath>
<outputDirectory path="${mavenBuildDir}/jdeveloper-classes/"/>
</Value>
</Item>
<Item>
<Key>oracle.jdevimpl.idl.config.IdlConfiguration</Key>
<Value class="oracle.jdevimpl.idl.config.IdlConfiguration">
<codeForIncludedFiles>false</codeForIncludedFiles>
<noBindMethods>false</noBindMethods>
<noComments>false</noComments>
<noExampleCode>false</noExampleCode>
<noSkeletonCode>false</noSkeletonCode>
<noStubCode>false</noStubCode>
<noTieCode>false</noTieCode>
<noToString>false</noToString>
<objectWrapper>false</objectWrapper>
<packageName class="java.lang.String"/>
</Value>
</Item>
<Item>
<Key>oracle.jdevimpl.runner.codecoach.CCConfiguration</Key>
<Value class="oracle.jdevimpl.runner.codecoach.CCConfiguration">
<advices>ALL</advices>
<exclude>com;java;javax;sun;sunw;org;oracle</exclude>
<include class="java.lang.String"/>
<level>4</level>
</Value>
</Item>
<Item>
<Key>oracle.jdevimpl.runner.debug.DebugConfiguration</Key>
<Value class="oracle.jdevimpl.runner.debug.DebugConfiguration">
<JPDAClassicDebugArguments>-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,address=&lt;port></JPDAClassicDebugArguments>
<JPDADebugArguments>-Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=&lt;port></JPDADebugArguments>
<OJVMDebugArguments>-XXdebug,quiet,port&lt;port></OJVMDebugArguments>
<breakpointScope>workspace</breakpointScope>
<remoteDebugging>false</remoteDebugging>
<remoteDebuggingParameters class="java.util.HashMap"/>
<remoteDebuggingParametersSaved>false</remoteDebuggingParametersSaved>
<remoteDebuggingProtocol>ojvm</remoteDebuggingProtocol>
<startOption>running</startOption>
<tracingDisabled>java;javax;sun;sunw;com.sun;org.xml.sax</tracingDisabled>
<tracingEnabled class="java.lang.String"/>
</Value>
</Item>
<Item>
<Key>oracle.jdevimpl.runner.profile.ProfileConfiguration</Key>
<Value class="oracle.jdevimpl.runner.profile.ProfileConfiguration">
<DMSstartID>20000</DMSstartID>
<DMSstate>0</DMSstate>
<eventColumnVisible>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
</eventColumnVisible>
<events>G(All events;(G(VM Events;(E(0;GC;-16776961;1);E(10;Wait;-65485;0);E(11;Synch Blocks 0;-39322;0);E(12;Synch Blocks 1;-39322;0);E(13;Synch Blocks 2;-39322;0);E(20;Prepare Class;-16751002;0);E(21;Load Class;-16724992;0);E(22;Resolve Class;-16737997;0);));G(BC4J Events;(E(1000;JBO_MISCELLANEOUS;-4144960;1);E(1001;JDBC_SELECT;-256;1);E(1002;JDBC_CREATE_STATEMENT;-256;1);E(1003;JDBC_CONNECT;-256;1);E(1004;JDBC_CREATE_PREPARED_STATEMENT;-256;1);E(1005;JDBC_EXECUTE;-256;1);E(1006;METAOBJECT_LOAD;-65281;1);E(1007;EXECUTE_QUERY;-16776961;1);E(1008;BC4J_CREATE_COMPOBJ;-65281;0);E(1009;BC4J_CREATE_ROOTAM;-65281;1);E(1010;BC4J_CREATE_VIEWOBJECT;-65281;0);E(1011;BC4J_CREATE_AM;-65281;0);E(1012;BC4J_CREATE_VIEWLINK;-65281;0);E(1013;SQLB_DOENTITYDML;-16776961;1);E(1014;SQLB_DOENTITYSELECT;-16776961;1);E(1015;VIEWOBJECT_GETSTATEMENT;-16776961;1);E(1016;REMOTE_METHOD_CALL;-65536;1);));));</events>
<excludedClasses>java;javax;sun;sunw;com;oracle</excludedClasses>
<excludedInstances class="java.lang.String"/>
<includedClasses class="java.lang.String"/>
<includedInstances class="java.lang.String"/>
<localProfiling>true</localProfiling>
<memColumnVisible>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
</memColumnVisible>
<memoryUpdateInterval>10</memoryUpdateInterval>
<remoteHost class="java.lang.String"/>
<remoteParametersSaved>false</remoteParametersSaved>
<remotePort>4000</remotePort>
<sampleColumnVisible>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
<Item>true</Item>
</sampleColumnVisible>
<sampleInterval>5</sampleInterval>
<sliderDepth>20</sliderDepth>
<useAPI>false</useAPI>
</Value>
</Item>
<Item>
<Key>oracle.jdevimpl.sqlj.config.SqljConfiguration</Key>
<Value class="oracle.jdevimpl.sqlj.config.SqljConfiguration">
<checkSemantics>false</checkSemantics>
<codegen>oracle</codegen>
<contextConnectionMap class="java.util.HashMap"/>
<useCache>false</useCache>
<warnAll>false</warnAll>
<warnNull>false</warnNull>
<warnPortable>false</warnPortable>
<warnPrecision>false</warnPrecision>
<warnStrict>false</warnStrict>
<warnVerbose>false</warnVerbose>
</Value>
</Item>
<Item>
<Key>WebappJspCompilerOptions</Key>
<Value class="oracle.jdevimpl.webapp.jsp.JspCompilerOptions">
<requestTimeIntrospection>false</requestTimeIntrospection>
</Value>
</Item>
</configData>
</Value>
</Item>
</configurations>
</projectSettings>
<projectSourcePath>
<entries>
<Item path="${pom.build.sourceDirectory}"/>
<j:if test="${pom.build.unitTestSourceDirectory}!= ''">
<Item path="${pom.build.unitTestSourceDirectory}"/>
</j:if>
<j:if test="${pom.build.integrationUnitTestSourceDirectory}!= ''">
<Item path="${pom.build.integrationUnitTestSourceDirectory}"/>
</j:if>
<Item path="${mavenBuildDir}/xdoclet/ejbdoclet"/>
<Item path="${mavenBuildDir}/xdoclet/jmxdoclet"/>
</entries>
</projectSourcePath>
<properties class="java.util.HashMap">
<Item>
<Key>useDynamicPaths</Key>
<Value class="java.lang.Boolean">true</Value>
</Item>
</properties>
<properties/>
<userAuthor/>
<userCompany>${pom.organization.name}</userCompany>
<userCopyright>${pom.organization.name}</userCopyright>
<userDescription/>
<userTitle/>
<userVersion/>
</project>
</j:file>
</goal>
<!--
Scans all source file in order to add them to the file.
!-->
<goal name="jdeveloper:scanSources"
description="Scans the source in order to integrate them into JDeveloper files">
<ant:fileScanner var="javaSourceFiles">
<ant:fileset dir="${pom.build.sourceDirectory}">
<ant:patternset>
<ant:include name="**/*.java"/>
</ant:patternset>
</ant:fileset>
</ant:fileScanner>
<j:if test="${pom.build.unitTestSourceDirectory} != ''">
<ant:fileScanner var="unitTestSourceFiles">
<ant:fileset dir="${pom.build.unitTestDirectory}">
<ant:patternset>
<ant:include name="**/*.java"/>
</ant:patternset>
</ant:fileset>
</ant:fileScanner>
</j:if>
<j:if test="${pom.build.integrationUnitTestSourceDirectory}!= ''">
<ant:fileScanner var="integrationTestSourceFiles">
<ant:fileset dir="${pom.build.integrationUnitTestDirectory}">
<ant:patternset>
<ant:include name="**/*.java"/>
</ant:patternset>
</ant:fileset>
</ant:fileScanner>
</j:if>
<ant:fileScanner var="javaDocFiles">
<ant:fileset dir="${pom.build.sourceDirectory}">
<ant:patternset>
<ant:include name="**/*.html"/>
</ant:patternset>
</ant:fileset>
</ant:fileScanner>
</goal>
</project>
-31
View File
@@ -1,31 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# -------------------------------------------------------------------
# P L U G I N P R O P E R I E S
# -------------------------------------------------------------------
# JDeveloper plugin.
# -------------------------------------------------------------------
# Define project properties
maven.jdeveloper.workspache=WPS
maven.jdeveloper.relative.path=../../..
maven.jdeveloper.maven.home=contrib/maven-1.0-beta-7
# Enable J2EE stuff
maven.war.final.name=${pom.artifactId}
ear.bundle.war.context-root=${pom.artifactId}
-19
View File
@@ -1,19 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# -------------------------------------------------------------------
# P R O J E C T P R O P E R T I E S
# -------------------------------------------------------------------
-71
View File
@@ -1,71 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project>
<extend>../plugin-parent/project.xml</extend>
<pomVersion>3</pomVersion>
<id>maven-jdeveloper-plugin</id>
<name>Maven JDeveloper Plug-in</name>
<currentVersion>1.4</currentVersion>
<inceptionYear>2002</inceptionYear>
<description>A plugin to generate various files for Oracle's JDeveloper IDE and ease the use of Maven within that environment</description>
<shortDescription>JDeveloper Plugin for Maven</shortDescription>
<url>http://maven.apache.org/reference/plugins/jdeveloper/</url>
<issueTrackingUrl>http://jira.codehaus.org/browse/MPJDEVELOPER</issueTrackingUrl>
<siteDirectory>/www/maven.apache.org/reference/plugins/jdeveloper/</siteDirectory>
<repository>
<connection>scm:svn:http://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/jdeveloper</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/jdeveloper/</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/maven/maven-1/plugins/trunk/jdeveloper/</url>
</repository>
<developers>
<developer>
<name>Tobias Rademacher</name>
<id>tradem</id>
<email>toby-wan-kenobi@web.de</email>
<organization>GROB Werke</organization>
<roles>
<role>Java Developer</role>
</roles>
</developer>
</developers>
<dependencies>
<!-- Required for JavaPackageTool -->
<!-- Don't upgrade to 2.5! -->
<dependency>
<groupId>jdepend</groupId>
<artifactId>jdepend</artifactId>
<version>2.3</version>
</dependency>
</dependencies>
<versions>
<version>
<id>1.3</id>
<name>1.3</name>
<tag>MAVEN_JDEVELOPER_1_3</tag>
</version>
<version>
<id>1.4</id>
<name>1.4</name>
<tag>MAVEN_JDEVELOPER_1_4</tag>
</version>
</versions>
</project>
@@ -1,70 +0,0 @@
package org.apache.maven.jdeveloper;
/* ====================================================================
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ====================================================================
*/
import java.io.File;
import java.io.IOException;
import jdepend.framework.JavaClass;
import jdepend.framework.JavaSourceFileParser;
/**
* @author Ben Walding
*
*/
public class JavaSourceTool {
/**
* Extracts the package name from the java source file and returns it as
* a directory. For example if the file name is :
* "e:\tmp\src\main\org\apache\maven\Code.java", and <code>Code.java</code>
* is in the <code>org.apache.maven</code> package, this method will
* return "org\apache\maven\Code.java" (or "org/apache/maven/Code.java" on
* unix).
*
* @param absoluteFileName the absolute file name to transform
* @return the shortened file name matching the class package name.
* @throws IOException upon failure to read the java file
*/
public static final String getPackagePath(String absoluteFileName) throws IOException {
String shortenedPath;
JavaSourceFileParser parser = new JavaSourceFileParser();
JavaClass clazz = null;
try {
clazz = parser.parse(absoluteFileName);
} catch (Exception e) {
System.out.println("\nError parsing " + absoluteFileName + ": " + e + "\n");
return null;
}
String packageName = clazz.getPackageName();
// Handle default packages for which JDepend returns "default"
if (packageName.equals("default")) {
shortenedPath = clazz.getName() + ".java";
} else {
shortenedPath =
packageName.replace('.', File.separatorChar) + File.separatorChar + clazz.getName() + ".java";
}
return shortenedPath;
}
}
-39
View File
@@ -1,39 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Changes</title>
<author email="toby-wan-kenobi@web.de">Tobias Radmeacher</author>
</properties>
<body>
<release version="1.3" date="2004-03-11">
<action dev="evenisse" type="fix" issue="MPJDEVELOPER-1">Fix JPR file generation.</action>
</release>
<release version="1.2" date="2003-09-29"></release>
<release version="1.1" date="Unknown">
<action dev="dion" type="fix">Align dependencies with plugin code</action>
</release>
<release version="1.0" date="2003-02-12">
<action dev="tradem" type="add">Created plugin</action>
<action dev="tradem" type="add">Added documenation</action>
</release>
</body>
</document>
-55
View File
@@ -1,55 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Jdeveloper Plugin Goals</title>
<author email="toby-wan-kenoib@web.de">Tobias Rademacher</author>
</properties>
<body>
<goals>
<goal>
<name>jdeveloper</name>
<description>
The default goal. This goal simply executes the
<a href="#jdeveloper:generate-project">jdeveloper:generate-project</a> goal
</description>
</goal>
<goal>
<name>jdeveloper:generate-project</name>
<description>
Generates a <code>.jpr</code> file for JDevelopr describing
the project and adding the dependencies.
<ol>
<li>the build source directory</li>
<li>the build unit test source directory</li>
<li>each Maven project <code>dependency</code></li>
<li>an output directory for compiled code:
<code>target\jdeveloper-classes</code>
</li>
</ol>
</description>
</goal>
</goals>
</body>
</document>
-44
View File
@@ -1,44 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>Maven JDeveloper Plugin</title>
<author email="toby-wan-kenobi@web.de">Tobias Rademacher</author>
</properties>
<body>
<section name="Maven JDeveloper Plugin">
<p>
This plug-in provides the ability to generate JDeveloper project files
(<code>.JPR</code>).
</p>
<p>
For more information on the functionality provided by this plugin,
please see the <a href="goals.html">Goals</a> document.
</p>
<p>
For more information on how to customise the functionality provided
by this plugin, please see the <a href="properties.html">properties</a>
document.
</p>
</section>
</body>
</document>
-34
View File
@@ -1,34 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project name="Maven JDeveloper Plugin">
<title>Maven JDeveloper Plugin</title>
<body>
<links>
<item name="Maven" href="http://maven.apache.org/"/>
<item name="JDeveloper" href="http://otn.oracle.com/products/jdev/content.html"/>
</links>
<menu name="Overview">
<item name="Goals" href="/goals.html" />
<item name="Properties" href="/properties.html" />
</menu>
</body>
</project>
-93
View File
@@ -1,93 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<document>
<properties>
<title>JDeveloper Plugin Properties</title>
<author email="toby-wan-kenobi@web.de">Tobias Rademacher</author>
</properties>
<body>
<section name="JDeveloper Maven-Plugin Settings">
<table>
<tr><th>Property</th><th>Optional?</th><th>Description</th></tr>
<tr>
<td>maven.jdeveloper.workspache</td>
<td>Yes</td>
<td>
<p>
The workspache to which your project belongs. This is used
to generate J2EE-Webapp names.
</p>
</td>
</tr>
<tr>
<td>maven.jdeveloper.relative.path</td>
<td>No</td>
<td>
<p>
Stupidly JDeveloper access dependency JAR files with a realtive path.
This path points to your $MAVE_HOME directory relative from your
JDeveloper Installation directory. Normaly this look like <code>../../</code>
or similar depending where you have installed maven and the JDeveloper IDE.
</p>
<p>
The complete path of a depending JAR is generate with:
</p>
<ol>
<li>maven.jdeveloper.relative.path</li>
<li>maven.jdeveloper.maven.home</li>
<li>repository information</li>
</ol>
</td>
</tr>
<tr>
<td>maven.jdeveloper.maven.home</td>
<td>No</td>
<td>
<p>
The name of your $MAVEN_HOME directory for instance <code>maven-1.0-beta-7</code>
</p>
<p>
The complete path of a depending JAR is generate with:
</p>
<ol>
<li>maven.jdeveloper.relative.path</li>
<li>maven.jdeveloper.maven.home</li>
<li>repository information</li>
</ol>
</td>
</tr>
<tr>
<td>maven.war.final.name</td>
<td>Yes</td>
<td>
<p>
The name of the Web Applicaion (if it is a web app).
</p>
</td>
</tr>
</table>
<p>
A good place to set this property is the <code>build.propeties</code> file in <code>user.home</code> directory.
</p>
</section>
</body>
</document>
-62
View File
@@ -1,62 +0,0 @@
<?xml version="1.0"?>
<!--
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<project
xmlns:ant="jelly:ant"
xmlns:j="jelly:core">
<!-- ================================================================== -->
<!-- J U N I T D O C L E T -->
<!-- ================================================================== -->
<goal name="junitdoclet"
description="Generate unit tests">
<ant:mkdir dir="${maven.junitdoclet.outputDirectory}"/>
<ant:path id="junitdoclet.classpath">
<ant:path refid="maven.dependency.classpath"/>
<ant:pathelement path="${plugin.getDependencyPath('junit-doclet')}"/>
</ant:path>
<ant:javadoc
packagenames = "${pom.package}.*"
sourcepath = "${pom.build.sourceDirectory}"
defaultexcludes = "yes"
doclet = "com.objectfab.tools.junitdoclet.JUnitDoclet"
docletpathref = "junitdoclet.classpath"
additionalparam = "-d ${maven.junitdoclet.outputDirectory} -buildall">
<ant:classpath refid = "junitdoclet.classpath"/>>
</ant:javadoc>
<!--
| JUnitDoclet produces suites but we don't need these because the
| JUnit plugin picks up the test cases to run.
-->
<ant:delete>
<ant:fileset dir="${maven.junitdoclet.outputDirectory}">
<ant:include name="**/*Suite.java"/>
</ant:fileset>
</ant:delete>
</goal>
</project>
-24
View File
@@ -1,24 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# -------------------------------------------------------------------
# Default Maven properties for the JUnitDoclet plugin.
# -------------------------------------------------------------------
# These are the properties that we believe are immutable so we
# keep them apart from the project specific properties.
# -------------------------------------------------------------------
maven.junitdoclet.outputDirectory = ${maven.build.dir}/junitdoclet
-19
View File
@@ -1,19 +0,0 @@
# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------
# -------------------------------------------------------------------
# P R O J E C T P R O P E R T I E S
# -------------------------------------------------------------------
Loaded 100 of 208 files, more files were not shown because too many files have changed in this diff. Show more