2
* Copyright 2007 the original author or authors.
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
8
* http://www.apache.org/licenses/LICENSE-2.0
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
16
package com.octo.mtg.plugin;
18
import com.octo.mtg.plugin.tools.GrailsPluginProject;
19
import com.octo.mtg.plugin.tools.GrailsProject;
20
import org.apache.maven.plugin.MojoExecutionException;
21
import org.apache.maven.plugin.MojoFailureException;
26
* Validate consistency between Grails and Maven settings.
28
* @author <a href="mailto:aheritier@gmail.com">Arnaud HERITIER</a>
30
* @description Determines whether the current directory contains a Grails application or not, and creates one in the latter case.
33
* @requiresDependencyResolution runtime
36
public class MvnInitializeMojo extends AbstractGrailsMojo {
39
* The artifact id of the project.
41
* @parameter expression="${project.artifactId}"
45
private String artifactId;
48
* The packaging of the project.
50
* @parameter expression="${project.packaging}"
54
private String packaging;
57
* The version id of the project.
59
* @parameter expression="${project.version}"
63
private String version;
65
private static final String PLUGIN_PREFIX = "grails-";
67
public void execute() throws MojoExecutionException, MojoFailureException {
69
getGrailsServices().readProjectDescriptor();
70
} catch (MojoExecutionException ex) {
71
// Initialise the app.
72
getLog().info("Cannot read application info, so initialising new application.");
73
File outputDir = new File(project.getBuild().getDirectory(), "grails-lib");
74
getLog().info("Creating '" + outputDir + "' directory for Grails JARs");
76
runGrails("CreateApp", "--inplace --appVersion=" + version + " " + artifactId, false);