Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package org.duelengine.duel.staticapps.maven;
  
  import java.io.File;
  import java.net.URL;
 import java.util.List;
 
Generates static app from DUEL-based WAR

Goal:
generate
Phase:
package
 
 public class SiteGeneratorMojo extends AbstractMojo {
 
 	// http://maven.apache.org/ref/3.0.4/maven-model/maven.html#class_build
 
The project currently being built.

Parameter:
default-value="${project}"
Required:
Readonly:
 
 	private MavenProject project;

The plugin descriptor

Parameter:
default-value="${descriptor}"
 
Location of the configuration settings

Parameter:
default-value="${project.basedir}/staticapp.json"
 
 	private String configPath;
 
 	public void setLog(Log log) {
 		super.setLog(log);
 
 		MavenLoggerAdapterFactory.setMavenLogger(log);
 	};
 
 	public void execute()
 
 		Log log = this.getLog();
 
 		ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
 		try {
 			// http://stackoverflow.com/q/871708/43217
 			log.info("adding build dependencies and target to classPath");
 			List<StringruntimeClasspathElements = .getRuntimeClasspathElements();
 			List<URLruntimeUrls = new ArrayList<URL>(runtimeClasspathElements.size());
 			for (String element : runtimeClasspathElements) {
 				try {
 					URL elementURL = FileUtil.getCanonicalFile(element).toURI().toURL();
 					runtimeUrls.add(elementURL);
 					if (realm != null) {
 						realm.addURL(elementURL);
 					}
 
 				} catch (MalformedURLException ex) {
 					log.error(ex);
 				}
 			}
 			classLoader = new URLClassLoader(runtimeUrls.toArray(new URL[runtimeUrls.size()]), classLoader);
 			Thread.currentThread().setContextClassLoader(classLoader);
 
 			log.error(ex);
 		}
 
 		try {
 			File configFile = new File();
 
 			if (!configFile.isFile()) {
 				throw new FileNotFoundException(configFile.getPath());
			}
			// read config
			SiteConfig config = new ObjectMapper().reader(SiteConfig.class).readValue(configFile);
			// ensure paths are relative from config
			config
				.sourceDir(new File(configFile.getParentFile(), config.sourceDir()).getPath())
				.targetDir(new File(configFile.getParentFile(), config.targetDir()).getPath());
			// build site defined by config
			new SiteBuilder(classLoader).build(config);
catch (IOException e) {
			log.error(e);
		}
	}
New to GrepCode? Check out our FAQ X