From bd3c34a9333f7bcad9d669967b7b794862611add Mon Sep 17 00:00:00 2001 From: Stephane Nicoll Date: Sun, 25 Sep 2005 08:31:38 +0000 Subject: [PATCH] Moved maven-rar-plugin from the sandbox to maven-plugins git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@291391 13f79535-47bb-0310-9956-ffa450edef68 --- sandbox/maven-rar-plugin/pom.xml | 24 -- .../org/apache/maven/plugin/rar/RarMojo.java | 221 ------------------ 2 files changed, 245 deletions(-) delete mode 100644 sandbox/maven-rar-plugin/pom.xml delete mode 100644 sandbox/maven-rar-plugin/src/main/java/org/apache/maven/plugin/rar/RarMojo.java diff --git a/sandbox/maven-rar-plugin/pom.xml b/sandbox/maven-rar-plugin/pom.xml deleted file mode 100644 index 1d989aaa61..0000000000 --- a/sandbox/maven-rar-plugin/pom.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - maven-plugin-parent - org.apache.maven.plugins - 2.0-beta-1 - - 4.0.0 - maven-rar-plugin - maven-plugin - Maven Rar plugin - 2.0-beta-1-SNAPSHOT - - - org.apache.maven - maven-archiver - 2.0-beta-1 - - - org.apache.maven - maven-project - 2.0-beta-1 - - - diff --git a/sandbox/maven-rar-plugin/src/main/java/org/apache/maven/plugin/rar/RarMojo.java b/sandbox/maven-rar-plugin/src/main/java/org/apache/maven/plugin/rar/RarMojo.java deleted file mode 100644 index 7e8398a58c..0000000000 --- a/sandbox/maven-rar-plugin/src/main/java/org/apache/maven/plugin/rar/RarMojo.java +++ /dev/null @@ -1,221 +0,0 @@ -package org.apache.maven.plugin.rar; - -/* - * Copyright 2001-2005 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 org.apache.maven.plugin.AbstractMojo; -import org.apache.maven.plugin.MojoExecutionException; -import org.apache.maven.archiver.MavenArchiver; -import org.apache.maven.archiver.MavenArchiveConfiguration; -import org.apache.maven.project.MavenProject; -import org.apache.maven.artifact.Artifact; -import org.codehaus.plexus.util.FileUtils; - -import java.io.File; -import java.io.IOException; -import java.util.Iterator; -import java.util.Set; - -/** - * Builds J2EE Resource Adapter Archive (RAR) files. - * - * @author Stephane Nicoll - * @version $Id$ - * @goal rar - * @phase package - * @requiresDependencyResolution test - * @description builds a rar - */ -public class RarMojo - extends AbstractMojo -{ - public static final String RA_XML_URI = "META-INF/ra.xml"; - - - /** - * Single directory for extra files to include in the RAR. - * - * @parameter expression="${basedir}/src/rar" - * @required - */ - private String rarSourceDirectory; - - /** - * The location of the ra.xml file to be used within the rar file. - * - * @parameter expression="${basedir}/src/rar/META-INF/ra.xml" - */ - private String raXmlLocation; - - /** - * Specify if the generated jar file of this project should be - * included in the rar file ; default is true. - * - * @parameter - */ - private Boolean includeJar = Boolean.TRUE; - - /** - * The location of the manifest file to be used within the rar file. - * - * @parameter expression="${basedir}/src/rar/META-INF/MANIFEST.MF" - * @TODO handle this field - */ - private String manifestLocation; - - /** - * Directory that resources are copied to during the build. - * - * @parameter expression="${project.build.directory}/${project.build.finalName}" - * @required - */ - private String workDirectory; - - /** - * The directory for the generated RAR. - * - * @parameter expression="${project.build.directory}" - * @required - */ - private String outputDirectory; - - /** - * The name of the RAR file to generate. - * - * @parameter alias="rarName" expression="${project.build.finalName}" - * @required - * @readonly - */ - private String finalName; - - /** - * The maven project. - * - * @parameter expression="${project}" - * @required - * @readonly - * @description "the maven project to use" - */ - private MavenProject project; - - /** - * The maven archiver to use. - * - * @parameter - */ - private MavenArchiveConfiguration archive = new MavenArchiveConfiguration(); - - - private File buildDir; - - - public void execute() - throws MojoExecutionException - { - getLog().debug( " ======= RarMojo settings =======" ); - getLog().debug( "rarSourceDirectory[" + rarSourceDirectory + "]" ); - getLog().debug( "manifestLocation[" + manifestLocation + "]" ); - getLog().debug( "raXmlLocation[" + raXmlLocation + "]" ); - getLog().debug( "workDirectory[" + workDirectory + "]" ); - getLog().debug( "outputDirectory[" + outputDirectory + "]" ); - getLog().debug( "finalName[" + finalName + "]" ); - - // Check if jar file is there and if requested, copy it - try - { - if (includeJar.booleanValue()) { - File generatedJarFile = new File( outputDirectory, finalName + ".jar" ); - if (generatedJarFile.exists()) { - getLog().info( "Including generated jar file["+generatedJarFile.getName()+"]"); - FileUtils.copyFileToDirectory( generatedJarFile, getBuildDir()); - } - } - } - catch ( IOException e ) - { - throw new MojoExecutionException( "Error copying generated Jar file", e ); - } - - // Copy dependencies - try - { - Set artifacts = project.getArtifacts(); - for ( Iterator iter = artifacts.iterator(); iter.hasNext(); ) - { - Artifact artifact = (Artifact) iter.next(); - if ( !Artifact.SCOPE_TEST.equals( artifact.getScope() ) && - !Artifact.SCOPE_PROVIDED.equals( artifact.getScope() ) ) - { - getLog().info("Copying artifact[" + artifact.getGroupId() + ", " + artifact.getId() + ", " + - artifact.getScope() + "]"); - FileUtils.copyFileToDirectory( artifact.getFile(), getBuildDir() ); - } - } - } - catch ( IOException e ) - { - throw new MojoExecutionException( "Error copying RAR dependencies", e ); - } - - // Copy source files - try - { - File rarSourceDir = new File( rarSourceDirectory ); - if ( rarSourceDir.exists() ) - { - getLog().info( "Copy rar resources to " + getBuildDir().getAbsolutePath() ); - FileUtils.copyDirectoryStructure( rarSourceDir, getBuildDir() ); - } - } - catch ( IOException e ) - { - throw new MojoExecutionException( "Error copying RAR resources", e ); - } - - // Check if connector deployment descriptor is there - File ddFile = new File( getBuildDir(), RA_XML_URI ); - if ( !ddFile.exists() ) - { - getLog().warn( - "Connector deployment descriptor: " + ddFile.getAbsolutePath() + " does not exist." ); - } - - try - { - File rarFile = new File( outputDirectory, finalName + ".rar" ); - MavenArchiver archiver = new MavenArchiver(); - archiver.setOutputFile( rarFile ); - - archiver.getArchiver().addDirectory( getBuildDir() ); - archiver.createArchive( project, archive ); - } - catch ( Exception e ) - { - throw new MojoExecutionException( "Error assembling RAR", e ); - } - - - } - - protected File getBuildDir() - { - if ( buildDir == null ) - { - buildDir = new File( workDirectory ); - } - return buildDir; - } -}