mirror of https://github.com/apache/maven.git
o just checking in so michal and I can work something out
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@162705 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
ed24a60895
commit
e98d8b2a87
|
@ -9,28 +9,48 @@ import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
|
* @plugin.id compiler
|
||||||
|
* @plugin.description A maven2 plugin which integrates the use of Maven2 with IntelliJ's IDEA
|
||||||
*
|
*
|
||||||
|
* @parameter <name> <type> <required> <validatator> <description>
|
||||||
|
*
|
||||||
|
* This may be on a per method basis
|
||||||
|
* @parameter sourceDirectories String[] required validator
|
||||||
|
* @parameter outputDirectory String required validator
|
||||||
|
* @parameter classpathElements String[] required validator
|
||||||
|
* @parameter compiler String required validator
|
||||||
|
*
|
||||||
|
* The goal would map to a method if multiple methods were allowed
|
||||||
|
* @goal.name idea
|
||||||
|
* @goal.idea.parameter project #project
|
||||||
|
*
|
||||||
|
* There could be threadsafe and non threadsafe versions of a compiler
|
||||||
|
* plugin. The case where you instantiate a compiler plugin that maintains
|
||||||
|
* a reference to an incremental compiler.
|
||||||
|
*
|
||||||
|
* @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
|
||||||
* @version $Id$
|
* @version $Id$
|
||||||
|
* @todo make a plugin for each plugin type so that they are not all globbed in here
|
||||||
|
* this will remove the magic plexus does with Map requirements which will make
|
||||||
|
* reuse outside of the maven/plexus context easier
|
||||||
|
* @todo use compile source roots and not the pom.build.sourceDirectory so that any
|
||||||
|
* sort of preprocessing and/or source generation can be taken into consideration.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// Conditions underwhich we fail
|
|
||||||
// - specified source directory does not exist
|
|
||||||
// - missing classpath Elements
|
|
||||||
// - compilation error
|
|
||||||
|
|
||||||
// How to accurately report failures to users
|
|
||||||
|
|
||||||
public class CompilerPlugin
|
public class CompilerPlugin
|
||||||
extends AbstractPlugin
|
extends AbstractPlugin
|
||||||
{
|
{
|
||||||
private Map compilers;
|
private Map compilers;
|
||||||
|
|
||||||
private boolean debug = true;
|
private boolean debug = false;
|
||||||
|
|
||||||
public void execute( PluginExecutionRequest request, PluginExecutionResponse response )
|
public void execute( PluginExecutionRequest request, PluginExecutionResponse response )
|
||||||
throws Exception
|
throws Exception
|
||||||
{
|
{
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
//
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
|
||||||
String sourceDirectory = (String) request.getParameter( "sourceDirectory" );
|
String sourceDirectory = (String) request.getParameter( "sourceDirectory" );
|
||||||
|
|
||||||
String outputDirectory = (String) request.getParameter( "outputDirectory" );
|
String outputDirectory = (String) request.getParameter( "outputDirectory" );
|
||||||
|
@ -39,9 +59,13 @@ public class CompilerPlugin
|
||||||
|
|
||||||
String compilerId = (String) request.getParameter( "compiler" );
|
String compilerId = (String) request.getParameter( "compiler" );
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
//
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
|
||||||
if ( ! new File( sourceDirectory ).exists() )
|
if ( ! new File( sourceDirectory ).exists() )
|
||||||
{
|
{
|
||||||
throw new Exception( "The specified source directory '"+ sourceDirectory + "' does not exist!" );
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
Compiler compiler = (Compiler) compilers.get( compilerId );
|
Compiler compiler = (Compiler) compilers.get( compilerId );
|
||||||
|
|
Loading…
Reference in New Issue