Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

...

It uses a Maven Archetype to create a Wicket QuickStart project, so requires that Maven 2 be installed & configured beforehand.

...

HTML
outputhtml
<style>		
	#mvncmd label {
		text-align: right;		
		font-weight: bold;
		width: 100px;
		float: left;
		margin: 0px 5px;		
	}
	#mvncmd input, #mvncmd select, #mvncm span { width: 180px;	 margin-bottom: 5px;	}	 float: left;}
	#mvncmd textarea { width: 400px; height: 100px; }
	#mvncmd br { clear: left; }	
	#mvncmd div { float: left; }
</style>
<script type="text/javascript">
	function changeIt()
	{
		var  groupId = document.getElementById("groupId").value;
		var artifactId = document.getElementById("artifactId").value;
		var version = document.getElementById("version").value;
		var cmd = 'mvn archetype:create -DarchetypeGroupId=org.apache.wicket -DarchetypeArtifactId=wicket-archetype-quickstart -DarchetypeVersion=' + version + ' -DgroupId=' + groupId + ' -DartifactId=' + artifactId;						
		if (version.match(/.*SNAPSHOT/)) cmd += ' -DremoteRepositories=http://wicketstuff.org/maven/repository/';
		document.getElementById("cmdLine").value = cmd;
	}
</script>
<div id="mvncmd">
<div>
<label for="groupId" title="Base Package">GroupId:</label>
<input type="text" id="groupId" value="com.mycompany" onkeyup="changeIt();"/><br><span title="Base Package">&nbsp;(?)</span><br/>
<label for="artifactId" title="Project Name"> ArtifactId:</label> 
<input type="text" id="artifactId" value="myproject" onkeyup="changeIt();"><br"><span title="Project Name">&nbsp;(?)</span><br/>
<label for="version" title="Wicket Version">Version:</label>
<select id="version" value="1.3.0-rc2" onchange="changeIt();">
	        <option value="1.3.04-SNAPSHOT">1.3.04-SNAPSHOT</option>
	 
        <option value="1.34.09" selected="selected">1.3.0<.4.9</option>
        <option value="1.4.8">1.4.8</option>
	<option value="1.3-SNAPSHOT">1.0-rc23-SNAPSHOT</option>
        <option value="1.3.7">1.3.0-rc2<7</option>
	<option value="1.3.0-rc16">1.3.0-rc1<6</option>
</select>select><span title="Wicket Version">&nbsp;(?)</span>
</div>
<div>
<label for="cmdLine" id="cmdLabel">Command Line:</label>
<textarea id="cmdLine" onfocus="this.select();">
</textarea>
<script>changeIt();</script>
</div>
<br/>
</div>

...

See the Jetty plugin documentation for configuration options, etc.

Caveats

At present, running mvn package or mvn install will result in a NPE from the Surefire (testing) plugin as the generated pom.xml has no dependency on either JUnit or TestNG, which the plugin appears to expect if a src/test/java path is present. To avoid this issue, simply add the following to the <dependencies> section of the pom.xml.

...


<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>3.8.2</version>
    <scope>test</scope>
</dependency>

Using with a specific IDE

  • Eclipse
    • To create an Eclipse project, perform the "mvn eclipse:eclipse -DdownloadSources=true" command inside the project directory.
  • IDEA
    • To create an IDEA project perform the "mvn idea:idea" command inside the project directory, or if using IDEA 7, from within IDEA, just use "File/New Project/Import from external model/Maven", choose the project directory and select the generated pom.xml.
  • NetBeans
    • To create a NetBeans 6 project, just open the pom.xml directly.

More examples

Many more information and examples can be found on our Wiki or here