Author: brett Date: Wed Aug 10 06:12:25 2005 New Revision: 231226 URL: http://svn.apache.org/viewcvs?rev=231226&view=rev Log: add a basic C# plugin using the Ant tasks
Added: maven/components/trunk/sandbox/csharp/ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/pom.xml (with props) maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/compiler/ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/compiler/CSharpCompiler.java (with props) maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/compiler/CSharpCompilerMojo.java (with props) maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/helpers/ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/helpers/AntBuildListener.java (with props) maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/resources/ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/resources/META-INF/ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/resources/META-INF/plexus/ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/resources/META-INF/plexus/components.xml (with props) maven/components/trunk/sandbox/csharp/maven-csharp-test/ maven/components/trunk/sandbox/csharp/maven-csharp-test/pom.xml (with props) maven/components/trunk/sandbox/csharp/maven-csharp-test/src/ maven/components/trunk/sandbox/csharp/maven-csharp-test/src/main/ maven/components/trunk/sandbox/csharp/maven-csharp-test/src/main/csharp/ maven/components/trunk/sandbox/csharp/maven-csharp-test/src/main/csharp/Test.cs Added: maven/components/trunk/sandbox/csharp/maven-csharp-plugin/pom.xml URL: http://svn.apache.org/viewcvs/maven/components/trunk/sandbox/csharp/maven-csharp-plugin/pom.xml?rev=231226&view=auto ============================================================================== --- maven/components/trunk/sandbox/csharp/maven-csharp-plugin/pom.xml (added) +++ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/pom.xml Wed Aug 10 06:12:25 2005 @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-plugin-parent</artifactId> + <version>2.0-beta-1-SNAPSHOT</version> + </parent> + <artifactId>maven-csharp-plugin</artifactId> + <packaging>maven-plugin</packaging> + <name>csharp-plugin</name> + <version>1.0-SNAPSHOT</version> + <inceptionYear>2005</inceptionYear> + <description>M2 csharp plugin</description> + + <contributors> + <contributor> + <name>Gilles Dodinet</name> + <email>[EMAIL PROTECTED]</email> + <organization>Karmic Software Research</organization> + </contributor> + </contributors> + + <dependencies> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact</artifactId> + <version>2.0-beta-1-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-project</artifactId> + <version>2.0-beta-1-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>plexus</groupId> + <artifactId>plexus-compiler-api</artifactId> + <version>1.2</version> + </dependency> + <dependency> + <groupId>ant</groupId> + <artifactId>ant</artifactId> + <version>1.6.5</version> + </dependency> + <dependency> + <groupId>ant</groupId> + <artifactId>ant-nodeps</artifactId> + <version>1.6.5</version> + </dependency> + </dependencies> +</project> + Propchange: maven/components/trunk/sandbox/csharp/maven-csharp-plugin/pom.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/components/trunk/sandbox/csharp/maven-csharp-plugin/pom.xml ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/compiler/CSharpCompiler.java URL: http://svn.apache.org/viewcvs/maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/compiler/CSharpCompiler.java?rev=231226&view=auto ============================================================================== --- maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/compiler/CSharpCompiler.java (added) +++ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/compiler/CSharpCompiler.java Wed Aug 10 06:12:25 2005 @@ -0,0 +1,157 @@ +package org.apache.plugins.csharp.compiler; + +/* + * Copyright 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.plugins.csharp.helpers.AntBuildListener; +import org.apache.tools.ant.Project; +import org.apache.tools.ant.taskdefs.optional.dotnet.CSharp; +import org.codehaus.plexus.compiler.AbstractCompiler; +import org.codehaus.plexus.compiler.CompilerConfiguration; + +import java.io.File; +import java.util.List; +import java.util.Map; + +/** + * @author <a href="mailto:[EMAIL PROTECTED]">Gilles Dodinet</a> + * @version $Id$ + */ +public class CSharpCompiler + extends AbstractCompiler +{ + private File basedir; + + private AntBuildListener antBuildListener; + + private String references; + + public List compile( CompilerConfiguration config ) + throws Exception + { + + CSharp csc = createCompiler( config ); + + csc.execute(); + + return null; + } + + private CSharp createCompiler( CompilerConfiguration config ) + throws Exception + { + Map compilerOptions = config.getCompilerOptions(); + + CSharp csc = new CSharp(); + + Project antProject = new Project(); + antProject.setBaseDir( basedir ); + + if ( antBuildListener == null ) + { + antBuildListener = new AntBuildListener(); + } + + antProject.addBuildListener( antBuildListener ); + + csc.setProject( antProject ); + + csc.setOptimize( getBooleanOption( compilerOptions, "optimize", true ) ); + csc.setUnsafe( getBooleanOption( compilerOptions, "unsafe", false ) ); + csc.setIncremental( getBooleanOption( compilerOptions, "incremental", false ) ); + csc.setFullPaths( getBooleanOption( compilerOptions, "fullpaths", true ) ); + csc.setWarnLevel( getIntOption( compilerOptions, "warnLevel", 4 ) ); + csc.setDebug( getBooleanOption( compilerOptions, "debug", true ) ); + + csc.setMainClass( (String) compilerOptions.get( "mainClass" ) ); + + String type = (String) compilerOptions.get( "type" ); + + csc.setTargetType( type ); + csc.setReferences( references ); + + File destDir = new File( config.getOutputLocation() ); + if ( !destDir.exists() ) + { + destDir.mkdirs(); + } + csc.setDestDir( destDir ); + + String destFileName = (String) compilerOptions.get( "destFile" ); + if ( destFileName == null ) + { + destFileName = (String) compilerOptions.get( "mainClass" ); + } + csc.setDestFile( new File( destDir, destFileName + "." + getTypeExtension( type ) ) ); + + return csc; + } + + /** + * @param type + * @return + * @throws Exception + */ + private String getTypeExtension( String type ) + throws Exception + { + if ( "exe".equals( type ) || "winexe".equals( type ) ) + { + return "exe"; + } + if ( "library".equals( type ) || "module".equals( type ) ) + { + return "dll"; + } + throw new Exception( "Unrecognized type" ); + } + + private boolean getBooleanOption( Map options, String optionName, boolean defaultValue ) + { + Boolean optionValue = (Boolean) options.get( optionName ); + return optionValue != null ? optionValue.booleanValue() : defaultValue; + } + + private int getIntOption( Map options, String optionName, int defaultValue ) + { + Integer optionValue = (Integer) options.get( optionName ); + return optionValue != null ? optionValue.intValue() : defaultValue; + } + + /** + * @param basedir + */ + public void setBasedir( File basedir ) + { + this.basedir = basedir; + } + + /** + * @param antBuildListener The antBuildListener to set. + */ + public void setAntBuildListener( AntBuildListener antBuildListener ) + { + this.antBuildListener = antBuildListener; + } + + /** + * @param additionalModules The additionalModules to set. + */ + public void setReferences( String additionalModules ) + { + this.references = additionalModules; + } +} Propchange: maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/compiler/CSharpCompiler.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/compiler/CSharpCompiler.java ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/compiler/CSharpCompilerMojo.java URL: http://svn.apache.org/viewcvs/maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/compiler/CSharpCompilerMojo.java?rev=231226&view=auto ============================================================================== --- maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/compiler/CSharpCompilerMojo.java (added) +++ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/compiler/CSharpCompilerMojo.java Wed Aug 10 06:12:25 2005 @@ -0,0 +1,365 @@ +package org.apache.plugins.csharp.compiler; + +import org.apache.maven.artifact.Artifact; +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.project.MavenProject; +import org.apache.plugins.csharp.helpers.AntBuildListener; +import org.codehaus.plexus.compiler.CompilerConfiguration; + +import java.io.File; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Set; + +/* + * Copyright 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. + */ + + +/** + * @author <a href="mailto:[EMAIL PROTECTED]">Gilles Dodinet</a> + * @version $Id$ + * @description Compiles c# sources + * @goal compile + * @phase compile + * @requiresDependencyResolution compile + */ +public class CSharpCompilerMojo + extends AbstractMojo +{ + + /** + * @parameter + */ + private String debug = Boolean.TRUE.toString(); + + /** + * @parameter + */ + private String optimize = Boolean.TRUE.toString(); + + /** + * @parameter + */ + private String unsafe = Boolean.FALSE.toString(); + + /** + * @parameter + */ + private String incremental = Boolean.FALSE.toString(); + + /** + * @parameter + */ + private String fullPaths = Boolean.TRUE.toString(); + + /** + * @parameter + */ + private String warnLevel = "4"; + + /** + * @parameter + */ + private String mainClass; + + /** + * @parameter expression="${project}" + * @required + * @readonly + */ + private MavenProject project; + + /** + * @parameter expression="${project.build.outputDirectory}" + * @required + * @readonly + */ + private String outputDirectory; + + /** + * @parameter + */ + private String destFile; + + /** + * @parameter + * @required + */ + private String type = "library"; + + /** + * @parameter expression="${project.compileSourceRoots}" + * @required + * @readonly + */ + private List compileSourceRoots; + + public void execute() + throws MojoExecutionException + { + CompilerConfiguration config = new CompilerConfiguration(); + + Map compilerOptions = new HashMap(); + + config.setOutputLocation( outputDirectory ); + + config.setSourceLocations( compileSourceRoots ); + + compilerOptions.put( "optimize", Boolean.valueOf( optimize ) ); + compilerOptions.put( "unsafe", Boolean.valueOf( unsafe ) ); + compilerOptions.put( "incremental", Boolean.valueOf( incremental ) ); + compilerOptions.put( "fullPaths", Boolean.valueOf( fullPaths ) ); + compilerOptions.put( "warnLevel", Integer.valueOf( warnLevel ) ); + compilerOptions.put( "mainClass", mainClass ); + compilerOptions.put( "destFile", destFile ); + + //until handlers ready + compilerOptions.put( "type", type ); + //compilerOptions.put("type", project.getPackaging()); + + config.setCompilerOptions( compilerOptions ); + CSharpCompiler compiler = new CSharpCompiler(); + compiler.setBasedir( project.getBasedir() ); + compiler.setAntBuildListener( new AntBuildListener( this.getLog() ) ); + + String artifactList = ""; + Set artifacts = project.getArtifacts(); + int u = 0; + for ( Iterator i = artifacts.iterator(); i.hasNext(); ) + { + Artifact artifact = (Artifact) i.next(); + if ( "dll".equals( artifact.getType() ) ) + { + + File file = artifact.getFile(); + + artifactList += file.getAbsolutePath(); + if ( u < artifacts.size() - 1 ) + { + artifactList += ":"; + } + + } + u++; + } + compiler.setReferences( artifactList ); + + try + { + compiler.compile( config ); + } + catch ( Exception e ) + { + throw new MojoExecutionException( "Error compiling C# sources", e ); + } + + } + + /** + * @return Returns the debug. + */ + public String getDebug() + { + return debug; + } + + /** + * @param debug The debug to set. + */ + public void setDebug( String debug ) + { + this.debug = debug; + } + + /** + * @return Returns the fullPaths. + */ + public String getFullPaths() + { + return fullPaths; + } + + /** + * @param fullPaths The fullPaths to set. + */ + public void setFullPaths( String fullPaths ) + { + this.fullPaths = fullPaths; + } + + /** + * @return Returns the incremental. + */ + public String getIncremental() + { + return incremental; + } + + /** + * @param incremental The incremental to set. + */ + public void setIncremental( String incremental ) + { + this.incremental = incremental; + } + + /** + * @return Returns the mainClass. + */ + public String getMainClass() + { + return mainClass; + } + + /** + * @param mainClass The mainClass to set. + */ + public void setMainClass( String mainClass ) + { + this.mainClass = mainClass; + } + + /** + * @return Returns the optimize. + */ + public String getOptimize() + { + return optimize; + } + + /** + * @param optimize The optimize to set. + */ + public void setOptimize( String optimize ) + { + this.optimize = optimize; + } + + /** + * @return Returns the outputDirectory. + */ + public String getOutputDirectory() + { + return outputDirectory; + } + + /** + * @param outputDirectory The outputDirectory to set. + */ + public void setOutputDirectory( String outputDirectory ) + { + this.outputDirectory = outputDirectory; + } + + /** + * @return Returns the compileSourceRoots. + */ + public List getCompileSourceRoots() + { + return compileSourceRoots; + } + + /** + * @param compileSourceRoots The compileSourceRoots to set. + */ + public void setCompileSourceRoots( List compileSourceRoots ) + { + this.compileSourceRoots = compileSourceRoots; + } + + /** + * @return Returns the project. + */ + public MavenProject getProject() + { + return project; + } + + /** + * @param project The project to set. + */ + public void setProject( MavenProject project ) + { + this.project = project; + } + + /** + * @return Returns the unsafe. + */ + public String getUnsafe() + { + return unsafe; + } + + /** + * @param unsafe The unsafe to set. + */ + public void setUnsafe( String unsafe ) + { + this.unsafe = unsafe; + } + + /** + * @return Returns the warnLevel. + */ + public String getWarnLevel() + { + return warnLevel; + } + + /** + * @param warnLevel The warnLevel to set. + */ + public void setWarnLevel( String warnLevel ) + { + this.warnLevel = warnLevel; + } + + /** + * @return Returns the destFile. + */ + public String getDestFile() + { + return destFile; + } + + /** + * @param destFile The destFile to set. + */ + public void setDestFile( String destFile ) + { + this.destFile = destFile; + } + + /** + * @return Returns the type. + */ + public String getType() + { + return type; + } + + /** + * @param type The type to set. + */ + public void setType( String type ) + { + this.type = type; + } +} Propchange: maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/compiler/CSharpCompilerMojo.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/compiler/CSharpCompilerMojo.java ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/helpers/AntBuildListener.java URL: http://svn.apache.org/viewcvs/maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/helpers/AntBuildListener.java?rev=231226&view=auto ============================================================================== --- maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/helpers/AntBuildListener.java (added) +++ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/helpers/AntBuildListener.java Wed Aug 10 06:12:25 2005 @@ -0,0 +1,92 @@ +package org.apache.plugins.csharp.helpers; + +/* + * Copyright 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.logging.Log; +import org.apache.tools.ant.BuildEvent; +import org.apache.tools.ant.BuildListener; +import org.apache.tools.ant.Project; + + +/** + * @author <a href="mailto:[EMAIL PROTECTED]">Gilles Dodinet</a> + * @version $Id$ + */ +public final class AntBuildListener + implements BuildListener +{ + private Log log; + + public AntBuildListener() + { + } + + public AntBuildListener( Log log ) + { + this.log = log; + } + + public void buildFinished( BuildEvent arg0 ) + { + } + + public void buildStarted( BuildEvent arg0 ) + { + } + + public void targetStarted( BuildEvent arg0 ) + { + } + + public void targetFinished( BuildEvent arg0 ) + { + } + + public void taskStarted( BuildEvent arg0 ) + { + } + + public void taskFinished( BuildEvent arg0 ) + { + } + + public void messageLogged( BuildEvent e ) + { + if ( log == null ) + { + System.out.println( e.getMessage() ); + return; + } + switch ( e.getPriority() ) + { + case Project.MSG_DEBUG: + log.debug( e.getMessage() ); + break; + case Project.MSG_INFO : + log.info( e.getMessage() ); + break; + case Project.MSG_WARN : + log.warn( e.getMessage() ); + break; + case Project.MSG_ERR : + log.error( e.getMessage() ); + break; + default : + break; + } + } +} Propchange: maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/helpers/AntBuildListener.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/java/org/apache/plugins/csharp/helpers/AntBuildListener.java ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/resources/META-INF/plexus/components.xml URL: http://svn.apache.org/viewcvs/maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/resources/META-INF/plexus/components.xml?rev=231226&view=auto ============================================================================== --- maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/resources/META-INF/plexus/components.xml (added) +++ maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/resources/META-INF/plexus/components.xml Wed Aug 10 06:12:25 2005 @@ -0,0 +1,34 @@ +<component-set> + <components> + <component> + <role>org.apache.maven.artifact.handler.ArtifactHandler</role> + <role-hint>dll</role-hint> + <implementation>org.apache.maven.artifact.handler.DefaultArtifactHandler</implementation> + <configuration> + <type>dll</type> + <extension>dll</extension> + </configuration> + </component> + <component> + <role>org.apache.maven.artifact.handler.ArtifactHandler</role> + <role-hint>exe</role-hint> + <implementation>org.apache.maven.artifact.handler.DefaultArtifactHandler</implementation> + <configuration> + <type>exe</type> + <extension>exe</extension> + </configuration> + </component> + <component> + <role>org.apache.maven.lifecycle.mapping.LifecycleMapping</role> + <role-hint>dotnetexe</role-hint> + <implementation>org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping</implementation> + <configuration> + <phases> + <compile>csharp:compile</compile> + <install>install:install</install> + <deploy>deploy:deploy</deploy> + </phases> + </configuration> + </component> + </components> +</component-set> Propchange: maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/resources/META-INF/plexus/components.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/components/trunk/sandbox/csharp/maven-csharp-plugin/src/main/resources/META-INF/plexus/components.xml ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/components/trunk/sandbox/csharp/maven-csharp-test/pom.xml URL: http://svn.apache.org/viewcvs/maven/components/trunk/sandbox/csharp/maven-csharp-test/pom.xml?rev=231226&view=auto ============================================================================== --- maven/components/trunk/sandbox/csharp/maven-csharp-test/pom.xml (added) +++ maven/components/trunk/sandbox/csharp/maven-csharp-test/pom.xml Wed Aug 10 06:12:25 2005 @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven</groupId> + <artifactId>maven-csharp-plugin-test</artifactId> + <packaging>dotnetexe</packaging> + <name>csharp-plugin-test</name> + <version>1.0-SNAPSHOT</version> + <inceptionYear>2005</inceptionYear> + <description>M2 csharp plugin Test</description> + + <contributors> + <contributor> + <name>Gilles Dodinet</name> + <email>[EMAIL PROTECTED]</email> + <organization>Karmic Software Research</organization> + </contributor> + </contributors> + + <build> + <sourceDirectory>src/main/csharp</sourceDirectory> + <plugins> + <plugin> +<extensions>true</extensions> + <artifactId>maven-csharp-plugin</artifactId> + <version>1.0-SNAPSHOT</version> + <configuration> + <mainClass>Com.Test.Test2</mainClass> + <destFile>Test2</destFile> + <type>exe</type> + </configuration> + </plugin> + </plugins> + </build> +</project> + Propchange: maven/components/trunk/sandbox/csharp/maven-csharp-test/pom.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/components/trunk/sandbox/csharp/maven-csharp-test/pom.xml ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/components/trunk/sandbox/csharp/maven-csharp-test/src/main/csharp/Test.cs URL: http://svn.apache.org/viewcvs/maven/components/trunk/sandbox/csharp/maven-csharp-test/src/main/csharp/Test.cs?rev=231226&view=auto ============================================================================== --- maven/components/trunk/sandbox/csharp/maven-csharp-test/src/main/csharp/Test.cs (added) +++ maven/components/trunk/sandbox/csharp/maven-csharp-test/src/main/csharp/Test.cs Wed Aug 10 06:12:25 2005 @@ -0,0 +1,17 @@ + + +using System; +using System.Text; + +namespace Com.Test { + public class Test2 { + public int MyProp { + get { return 1; } + } + + [STAThread] + public static void Main(string[] args) { + System.Console.WriteLine("HELLO WORLD"); + } + } +} --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]