...
It uses a Maven Archetype to create a Wicket QuickStart project, so requires that Maven 2 be installed & configured beforehand.
...
Creating the project
To create your project, use copy and paste the following command , modifying the bold elements as desired
...
line generated after typing in the groupId, artifactId and version.
HTML | ||
---|---|---|
| ||
<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();"/><span title="Base Package"> (?)</span><br/>
<label for="artifactId" title="Project Name"> ArtifactId:</label>
<input type="text" id="artifactId" value="myproject" onkeyup="changeIt();"><span title="Project Name"> (?)</span><br/>
<label for="version" title="Wicket Version">Version:</label>
<select id="version" onchange="changeIt();">
<option value="1.4-SNAPSHOT">1.4-SNAPSHOT</option>
<option value="1.4.9" selected="selected">1.4.9</option>
<option value="1.4.8">1.4.8</option>
<option value="1.3-SNAPSHOT">1.3-SNAPSHOT</option>
<option value="1.3.7">1.3.7</option>
<option value="1.3.6">1.3.6</option>
</select><span title="Wicket Version"> (?)</span>
</div>
<div>
<label for="cmdLine" id="cmdLabel">Command Line:</label>
<textarea id="cmdLine" onfocus="this.select();">
</textarea>
<script>changeIt();</script>
</div>
<br/>
</div>
|
Results
This will produce the following project structure/files
No Formatcode |
---|
.\myproject
| pom.xml
|
\---src
+---main
| +---java
| | \---com
| | \---mycompany
| | HomePage.html
| | HomePage.java
| | WicketApplication.java
| |
| +---resources
| | log4j.properties
| |
| \---webapp
| \---WEB-INF
| web.xml
|
\---test
\---java
\---com
\---mycompany
Start.java
|
...
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 <dependancies>
section of the pom.xml
.
No Format |
---|
<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.
- To create an Eclipse project, perform the
- IDEA
- To create an IDEA project perform the
"mvn idea:idea"
command inside the project directory, or if using IDEA 7 (available via the Early Access Program (EAP)), from within IDEA, just use "File/New Project/Import from external model/Maven", choose the project directory and select the generated pom.xml.
- To create an IDEA project perform the
- NetBeans
- To create a NetBeans project perform the
"mvn netbeans:netbeans"
command inside the project directory, or if using NetBeans 66 project, just open the pom.xml directly.
- To create a NetBeans project perform the
More examples
Many more information and examples can be found on our Wiki or here