You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by ak...@apache.org on 2006/01/24 06:32:43 UTC
svn commit: r371823 - in /directory/trunks/apacheds/standalone/installers:
plugin/src/main/java/org/apache/directory/server/standalone/installers/ test/
Author: akarasulu
Date: Mon Jan 23 21:32:38 2006
New Revision: 371823
URL: http://svn.apache.org/viewcvs?rev=371823&view=rev
Log:
all compiles amd builds fine creating the installation image
Added:
directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/CreateImageCommand.java (with props)
directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/MojoCommand.java (with props)
directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/ServiceInstallersMojo.java (with props)
Removed:
directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/CreateImage.java
Modified:
directory/trunks/apacheds/standalone/installers/test/pom.xml
Added: directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/CreateImageCommand.java
URL: http://svn.apache.org/viewcvs/directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/CreateImageCommand.java?rev=371823&view=auto
==============================================================================
--- directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/CreateImageCommand.java (added)
+++ directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/CreateImageCommand.java Mon Jan 23 21:32:38 2006
@@ -0,0 +1,318 @@
+package org.apache.directory.server.standalone.installers;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.OutputStreamWriter;
+import java.io.Reader;
+import java.io.Writer;
+import java.util.Iterator;
+import java.util.Properties;
+
+import org.apache.directory.server.standalone.daemon.InstallationLayout;
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.MojoFailureException;
+import org.codehaus.plexus.util.FileUtils;
+import org.codehaus.plexus.util.IOUtil;
+import org.codehaus.plexus.util.InterpolationFilterReader;
+
+
+public class CreateImageCommand implements MojoCommand
+{
+ private final Properties filterProperties = new Properties( System.getProperties() );
+ private final ServiceInstallersMojo mymojo;
+ private final Target target;
+
+
+ public CreateImageCommand( ServiceInstallersMojo mojo, Target target )
+ {
+ this.mymojo = mojo;
+ this.target = target;
+ initializeFiltering();
+ }
+
+
+ private void initializeFiltering()
+ {
+ filterProperties.putAll( mymojo.getProject().getProperties() );
+ filterProperties.put( "app" , mymojo.getApplicationName() );
+ filterProperties.put( "app.caps" , mymojo.getApplicationName().toUpperCase() );
+ filterProperties.put( "app.server.class", mymojo.getApplicationClass() );
+
+ if ( mymojo.getApplicationVersion() != null )
+ {
+ filterProperties.put( "app.version", mymojo.getApplicationVersion() );
+ }
+
+ if ( mymojo.getApplicationDescription() != null )
+ {
+ filterProperties.put( "app.init.message", mymojo.getApplicationDescription() );
+ }
+ }
+
+
+ public void execute() throws MojoExecutionException, MojoFailureException
+ {
+ // make the layout directories
+ File dir = new File( mymojo.getOutputDirectory(), target.getId() );
+ InstallationLayout layout = new InstallationLayout( dir );
+ layout.mkdirs();
+
+ // copy over the REQUIRED bootstrapper.jar file
+ try
+ {
+ FileUtils.copyFile( mymojo.getBootstrapper().getFile(), layout.getBootstrapper() );
+ }
+ catch ( IOException e )
+ {
+ throw new MojoFailureException( "Failed to copy bootstrapper.jar " + mymojo.getBootstrapper().getFile()
+ + " into position " + layout.getBootstrapper() );
+ }
+
+ // copy over the REQUIRED bootstrapper configuration file
+ try
+ {
+ FileUtils.copyFile( target.getBootstrapperConfiguraitonFile(), layout.getBootstrapperConfigurationFile() );
+ }
+ catch ( IOException e )
+ {
+ throw new MojoFailureException( "Failed to copy bootstrapper configuration file "
+ + target.getBootstrapperConfiguraitonFile()
+ + " into position " + layout.getBootstrapperConfigurationFile() );
+ }
+
+ // copy over the optional logging configuration file
+ if ( target.getLoggerConfigurationFile().exists() )
+ {
+ try
+ {
+ FileUtils.copyFile( target.getLoggerConfigurationFile(),
+ layout.getLoggerConfigurationFile() );
+ }
+ catch ( IOException e )
+ {
+ mymojo.getLog().error( "Failed to copy logger configuration file "
+ + target.getLoggerConfigurationFile()
+ + " into position " + layout.getLoggerConfigurationFile(), e );
+ }
+ }
+
+ // copy over the optional server configuration file
+ if ( target.getServerConfigurationFile().exists() )
+ {
+ try
+ {
+ FileUtils.copyFile( target.getServerConfigurationFile(),
+ layout.getConfigurationFile() );
+ }
+ catch ( IOException e )
+ {
+ mymojo.getLog().error( "Failed to copy server configuration file "
+ + target.getServerConfigurationFile()
+ + " into position " + layout.getConfigurationFile(), e );
+ }
+ }
+
+ // copy over the init script template
+ if ( target.getOsFamily().equals( "unix" ) )
+ {
+ try
+ {
+ copyAsciiFile( getClass().getResourceAsStream( "template.init" ), layout.getInitScript(), true );
+ }
+ catch ( IOException e )
+ {
+ mymojo.getLog().error( "Failed to copy server configuration file "
+ + target.getServerConfigurationFile()
+ + " into position " + layout.getInitScript(), e );
+ }
+ }
+
+ // now copy over the jsvc executable renaming it to the applicationName
+ if ( target.getOsName().equals( "linux" ) &&
+ target.getOsArch().equals( "i386" ) )
+ {
+ File executable = new File ( layout.getBinDirectory(), mymojo.getApplicationName() );
+ try
+ {
+ copyBinaryFile( getClass().getResourceAsStream( "jsvc_linux_i386" ), executable );
+ }
+ catch ( IOException e )
+ {
+ throw new MojoFailureException( "Failed to copy jsvc executable file "
+ + getClass().getResource( "jsvc_linux_i386" )
+ + " into position " + executable.getAbsolutePath() );
+ }
+ }
+
+ // now copy over the jsvc executable renaming it to the mymojo.getApplicationName()
+ if ( target.getOsName().equals( "sunos" ) &&
+ target.getOsArch().equals( "sparc" ) )
+ {
+ File executable = new File ( layout.getBinDirectory(), mymojo.getApplicationName() );
+ try
+ {
+ copyBinaryFile( getClass().getResourceAsStream( "jsvc_solaris_sparc" ), executable );
+ }
+ catch ( IOException e )
+ {
+ throw new MojoFailureException( "Failed to copy jsvc executable file "
+ + getClass().getResource( "jsvc_solaris_sparc" )
+ + " into position " + executable.getAbsolutePath() );
+ }
+ }
+
+ // now copy over the jsvc executable renaming it to the mymojo.getApplicationName()
+ if ( target.getOsName().equals( "macosx" ) && target.getOsArch().equals( "ppc" ) )
+ {
+ File executable = new File ( layout.getBinDirectory(), mymojo.getApplicationName() );
+ try
+ {
+ copyBinaryFile( getClass().getResourceAsStream( "jsvc_macosx_ppc" ), executable );
+ }
+ catch ( IOException e )
+ {
+ throw new MojoFailureException( "Failed to copy jsvc executable file "
+ + getClass().getResource( "jsvc_macosx_ppc" )
+ + " into position " + executable.getAbsolutePath() );
+ }
+ }
+
+ // now copy over the Prunsrv and Prunmgr executables renaming them to the mymojo.getApplicationName() + w for mgr
+ if ( target.getOsFamily().equals( "windows" ) && target.getOsArch().equals( "x86" ) )
+ {
+ File executable = new File ( layout.getBinDirectory(), mymojo.getApplicationName() + ".exe" );
+ try
+ {
+ copyBinaryFile( getClass().getResourceAsStream( "prunsrv.exe" ), executable );
+ }
+ catch ( IOException e )
+ {
+ throw new MojoFailureException( "Failed to copy prunsrv executable file "
+ + getClass().getResource( "prunsrv.exe" )
+ + " into position " + executable.getAbsolutePath() );
+ }
+
+ executable = new File ( layout.getBinDirectory(), mymojo.getApplicationName() + "w.exe" );
+ try
+ {
+ copyBinaryFile( getClass().getResourceAsStream( "prunmgr.exe" ), executable );
+ }
+ catch ( IOException e )
+ {
+ throw new MojoFailureException( "Failed to copy prunmgr executable file "
+ + getClass().getResource( "prunmgr.exe" )
+ + " into position " + executable.getAbsolutePath() );
+ }
+ }
+
+ copyDependencies( layout );
+ }
+
+
+ private void copyBinaryFile( InputStream from, File to ) throws IOException
+ {
+ FileOutputStream out = null;
+ try
+ {
+ out = new FileOutputStream( to );
+ IOUtil.copy( from, out );
+ }
+ finally
+ {
+ IOUtil.close( from );
+ IOUtil.close( out );
+ }
+ }
+
+
+ private void copyAsciiFile( InputStream from, File to, boolean filtering ) throws IOException
+ {
+ // buffer so it isn't reading a byte at a time!
+ Reader fileReader = null;
+ Writer fileWriter = null;
+ try
+ {
+ if ( mymojo.getEncoding() == null || mymojo.getEncoding().length() < 1 )
+ {
+ fileReader = new BufferedReader( new InputStreamReader( from ) );
+ fileWriter = new FileWriter( to );
+ }
+ else
+ {
+ FileOutputStream outstream = new FileOutputStream( to );
+ fileReader = new BufferedReader( new InputStreamReader( from, mymojo.getEncoding() ) );
+ fileWriter = new OutputStreamWriter( outstream, mymojo.getEncoding() );
+ }
+
+ Reader reader = null;
+ if ( filtering )
+ {
+ // support _${token}
+ reader = new InterpolationFilterReader( fileReader, filterProperties, "_${", "}" );
+ // support ${token}
+ reader = new InterpolationFilterReader( reader, filterProperties, "${", "}" );
+ // support @token@
+ reader = new InterpolationFilterReader( reader, filterProperties, "@", "@" );
+
+ boolean isPropertiesFile = false;
+ if ( to.isFile() && to.getName().endsWith( ".properties" ) )
+ {
+ isPropertiesFile = true;
+ }
+ reader = new InterpolationFilterReader( reader,
+ new ReflectionProperties( mymojo.getProject(), isPropertiesFile ), "${", "}" );
+ }
+ else
+ {
+ reader = fileReader;
+ }
+ IOUtil.copy( reader, fileWriter );
+ }
+ finally
+ {
+ IOUtil.close( fileReader );
+ IOUtil.close( fileWriter );
+ }
+ }
+
+
+ private void copyDependencies( InstallationLayout layout ) throws MojoFailureException
+ {
+ Artifact artifact = null;
+ Iterator artifacts = mymojo.getProject().getRuntimeArtifacts().iterator();
+ while ( artifacts.hasNext() )
+ {
+ artifact = ( Artifact ) artifacts.next();
+ if ( artifact.equals( mymojo.getBootstrapper() ) )
+ {
+ mymojo.getLog().info( "Not copying bootstrapper " + artifact );
+ }
+ else
+ {
+ String key = artifact.getGroupId() + ":" + artifact.getArtifactId();
+ if ( mymojo.getExcludes().contains( key ) )
+ {
+ mymojo.getLog().info( "<<<=== excluded <<<=== " + key );
+ continue;
+ }
+
+ try
+ {
+ FileUtils.copyFileToDirectory( artifact.getFile(), layout.getLibDirectory() );
+ mymojo.getLog().info( "===>>> included ===>>> " + key );
+ }
+ catch ( IOException e )
+ {
+ throw new MojoFailureException( "Failed to copy dependency artifact "
+ + artifact + " into position " + layout.getLibDirectory() );
+ }
+ }
+ }
+ }
+}
Propchange: directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/CreateImageCommand.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/MojoCommand.java
URL: http://svn.apache.org/viewcvs/directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/MojoCommand.java?rev=371823&view=auto
==============================================================================
--- directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/MojoCommand.java (added)
+++ directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/MojoCommand.java Mon Jan 23 21:32:38 2006
@@ -0,0 +1,11 @@
+package org.apache.directory.server.standalone.installers;
+
+
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.MojoFailureException;
+
+
+public interface MojoCommand
+{
+ public abstract void execute() throws MojoExecutionException, MojoFailureException;
+}
Propchange: directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/MojoCommand.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/ServiceInstallersMojo.java
URL: http://svn.apache.org/viewcvs/directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/ServiceInstallersMojo.java?rev=371823&view=auto
==============================================================================
--- directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/ServiceInstallersMojo.java (added)
+++ directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/ServiceInstallersMojo.java Mon Jan 23 21:32:38 2006
@@ -0,0 +1,308 @@
+package org.apache.directory.server.standalone.installers;
+
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.MojoFailureException;
+import org.apache.maven.project.MavenProject;
+
+
+/**
+ * Maven 2 mojo creating the platform specific installation layout images.
+ *
+ * @goal generate
+ * @description Creates platform specific installation layout images.
+ * @phase package
+ * @requiresDependencyResolution runtime
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$
+ */
+public class ServiceInstallersMojo extends AbstractMojo
+{
+ static final String BOOTSTRAPPER_ARTIFACT_ID = "org.apache.directory.server.standalone.daemon";
+ static final String BOOTSTRAPPER_GROUP_ID = "org.apache.directory.server.standalone.daemon";
+
+ /**
+ * The target directory into which the mojo creates os and platform
+ * specific images.
+ * @parameter expression="target/images"
+ */
+ private File outputDirectory;
+
+ /**
+ * The source directory where various configuration files for the installer
+ * are stored.
+ *
+ * @parameter expression="src/main/installers"
+ */
+ private File sourceDirectory;
+
+ /**
+ * @parameter expression="${project}"
+ * @required
+ */
+ private MavenProject project;
+
+ /**
+ * @parameter
+ */
+ private IzPackTarget[] izPackTargets;
+
+ /**
+ * @parameter
+ */
+ private RpmTarget[] rpmTargets;
+
+ /**
+ * @parameter
+ */
+ private PkgTarget[] pkgTargets;
+
+ /**
+ * @parameter
+ */
+ private InnoTarget[] innoTargets;
+
+ /**
+ * @parameter
+ */
+ private DebTarget[] debTargets;
+
+ /**
+ * @parameter
+ * @required
+ */
+ private String applicationName;
+
+ /**
+ * @parameter
+ * @required
+ */
+ private String applicationClass;
+
+ /**
+ * @parameter
+ * @required
+ */
+ private String applicationVersion;
+
+ /**
+ * @parameter
+ */
+ private String applicationDescription;
+
+ /**
+ * @parameter
+ */
+ private String encoding;
+
+ /**
+ * @parameter
+ */
+ private Set excludes;
+
+ private Artifact bootstrapper;
+ private List allTargets;
+
+
+ public void execute() throws MojoExecutionException, MojoFailureException
+ {
+ // collect all targets
+ initializeAllTargets();
+
+ // makes sure defaulted values are set to globals
+ setDefaults();
+
+ // bail if there is nothing to do
+ if ( allTargets.isEmpty() )
+ {
+ getLog().info( "===================================================================" );
+ getLog().info( "[installers:generate]" );
+ getLog().info( "No installers to generate." );
+ getLog().info( "===================================================================" );
+ return;
+ }
+
+ // report what we have to build
+ reportSetup();
+
+ // search for and find the bootstrapper artifact
+ setBootstrapperArtifact();
+
+ // creates installation images for all targets
+ for ( int ii = 0; ii < allTargets.size(); ii++ )
+ {
+ CreateImageCommand command = new CreateImageCommand( this, ( Target ) allTargets.get( ii ) );
+ command.execute();
+ }
+ }
+
+
+ private void initializeAllTargets()
+ {
+ allTargets = new ArrayList();
+ addAll( allTargets, izPackTargets );
+ addAll( allTargets, innoTargets );
+ addAll( allTargets, rpmTargets );
+ addAll( allTargets, debTargets );
+ addAll( allTargets, pkgTargets );
+ }
+
+
+ private void addAll( List list, Object[] array )
+ {
+ if ( array == null ) return;
+ for ( int ii = 0; ii < array.length; ii++ )
+ {
+ list.add( array[ii] );
+ }
+ }
+
+
+ private void setDefaults()
+ {
+ if ( allTargets == null )
+ {
+ return;
+ }
+
+ for ( int ii = 0; ii < allTargets.size(); ii++ )
+ {
+ Target target = ( Target ) allTargets.get( ii );
+
+ if ( target.getLoggerConfigurationFile() == null )
+ {
+ target.setLoggerConfigurationFile( new File( sourceDirectory, "log4j.properties" ) );
+ }
+ if ( target.getBootstrapperConfiguraitonFile() == null )
+ {
+ target.setBootstrapperConfiguraitonFile( new File( sourceDirectory, "bootstrapper.properties" ) );
+ }
+ if ( target.getServerConfigurationFile() == null )
+ {
+ target.setServerConfigurationFile( new File( sourceDirectory, "server.xml" ) );
+ }
+ if ( target.getOsVersion() == null )
+ {
+ target.setOsVersion( "*" );
+ }
+ }
+ }
+
+
+ private void setBootstrapperArtifact() throws MojoFailureException
+ {
+ Artifact artifact = null;
+ Iterator artifacts = project.getDependencyArtifacts().iterator();
+ while ( artifacts.hasNext() )
+ {
+ artifact = ( Artifact ) artifacts.next();
+ if ( artifact.getArtifactId().equals( BOOTSTRAPPER_ARTIFACT_ID ) || artifact.getGroupId().equals( BOOTSTRAPPER_GROUP_ID ) )
+ {
+ getLog().info( "Found bootstrapper dependency with version: " + artifact.getVersion() );
+ bootstrapper = artifact;
+ return;
+ }
+ }
+
+ throw new MojoFailureException( "Bootstrapper dependency artifact required: "
+ + BOOTSTRAPPER_GROUP_ID + ":" + BOOTSTRAPPER_ARTIFACT_ID );
+ }
+
+
+ public void reportSetup()
+ {
+ getLog().info( "===================================================================" );
+ getLog().info( "[installers:create]" );
+ getLog().info( "applicationName = " + applicationName );
+ getLog().info( "sourceDirectory = " + sourceDirectory );
+ getLog().info( "outputDirectory = " + outputDirectory );
+ getLog().info( "----------------------------- allTargets -----------------------------" );
+
+ if ( allTargets != null )
+ {
+ for ( int ii = 0; ii < allTargets.size(); ii++ )
+ {
+ getLog().info( "id: " + ( ( Target ) allTargets.get( ii ) ).getId() );
+ getLog().info( "osName: " + ( ( Target ) allTargets.get( ii ) ).getOsName() );
+ getLog().info( "osArch: " + ( ( Target ) allTargets.get( ii ) ).getOsArch() );
+ getLog().info( "osVersion: " + ( ( Target ) allTargets.get( ii ) ).getOsVersion() );
+ getLog().info( "daemonFramework: " + ( ( Target ) allTargets.get( ii ) ).getDaemonFramework() );
+ getLog().info( "loggerConfigurationFile: " +
+ ( ( Target ) allTargets.get( ii ) ).getLoggerConfigurationFile() );
+ getLog().info( "bootstrapperConfiguraitonFiles: " +
+ ( ( Target ) allTargets.get( ii ) ).getBootstrapperConfiguraitonFile() );
+ getLog().info( "serverConfigurationFil: " +
+ ( ( Target ) allTargets.get( ii ) ).getServerConfigurationFile() );
+
+ if ( ii + 1 < allTargets.size() )
+ {
+ getLog().info( "" );
+ }
+ }
+ }
+
+ getLog().info( "===================================================================" );
+ }
+
+
+ public File getOutputDirectory()
+ {
+ return outputDirectory;
+ }
+
+
+ public Artifact getBootstrapper()
+ {
+ return bootstrapper;
+ }
+
+
+ public String getApplicationName()
+ {
+ return applicationName;
+ }
+
+
+ public String getEncoding()
+ {
+ return this.encoding;
+ }
+
+
+ public MavenProject getProject()
+ {
+ return project;
+ }
+
+
+ public Set getExcludes()
+ {
+ return this.excludes;
+ }
+
+
+ public String getApplicationVersion()
+ {
+ return this.applicationVersion;
+ }
+
+
+ public String getApplicationClass()
+ {
+ return this.applicationClass;
+ }
+
+
+ public String getApplicationDescription()
+ {
+ return this.applicationDescription;
+ }
+}
Propchange: directory/trunks/apacheds/standalone/installers/plugin/src/main/java/org/apache/directory/server/standalone/installers/ServiceInstallersMojo.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: directory/trunks/apacheds/standalone/installers/test/pom.xml
URL: http://svn.apache.org/viewcvs/directory/trunks/apacheds/standalone/installers/test/pom.xml?rev=371823&r1=371822&r2=371823&view=diff
==============================================================================
--- directory/trunks/apacheds/standalone/installers/test/pom.xml (original)
+++ directory/trunks/apacheds/standalone/installers/test/pom.xml Mon Jan 23 21:32:38 2006
@@ -86,47 +86,45 @@
<applicationName>test</applicationName>
<applicationClass>org.apache.ldap.server.DirectoryServer</applicationClass>
<applicationVersion>${pom.version}</applicationVersion>
- <targets>
- <target>
+ <innoTargets>
+ <innoTarget>
<id>windows-xp-procrun-izpack</id>
<osName>Windows XP</osName>
<osFamily>windows</osFamily>
<osVersion>5.1</osVersion>
<osArch>x86</osArch>
<daemonFramework>procrun</daemonFramework>
- <installer>inno</installer>
- </target>
- <target>
+ </innoTarget>
+ </innoTargets>
+ <izPackTargets>
+ <izPackTarget>
<id>linux-jsvc-izpack</id>
<osName>Linux</osName>
<osFamily>unix</osFamily>
<osArch>i386</osArch>
<daemonFramework>jsvc</daemonFramework>
- <installer>izpack</installer>
- </target>
- <target>
+ </izPackTarget>
+ <izPackTarget>
<id>macosx-jsvc-izpack</id>
<osName>macosx</osName>
<osFamily>unix</osFamily>
<osArch>ppc</osArch>
<daemonFramework>jsvc</daemonFramework>
- <installer>izpack</installer>
- </target>
- <target>
+ </izPackTarget>
+ <izPackTarget>
<id>solaris-jsvc-izpack</id>
<osName>sunos</osName>
<osFamily>unix</osFamily>
<minVersion>5.6</minVersion>
<osArch>sparc</osArch>
<daemonFramework>jsvc</daemonFramework>
- <installer>izpack</installer>
- </target>
- </targets>
+ </izPackTarget>
+ </izPackTargets>
</configuration>
<executions>
<execution>
<goals>
- <goal>create</goal>
+ <goal>generate</goal>
</goals>
</execution>
</executions>