You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by ca...@apache.org on 2020/09/19 08:19:19 UTC
[royale-asjs] branch develop updated: maven-archetypes:
"royale-jewel-application-archetype" now has -DincludeCrux=true (so
"royale-jewe-cruxl-application-archetype" can be removed). Also get more
improvements like package creation and names based on artifactId
This is an automated email from the ASF dual-hosted git repository.
carlosrovira pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git
The following commit(s) were added to refs/heads/develop by this push:
new c7b5b45 maven-archetypes: "royale-jewel-application-archetype" now has -DincludeCrux=true (so "royale-jewe-cruxl-application-archetype" can be removed). Also get more improvements like package creation and names based on artifactId
c7b5b45 is described below
commit c7b5b45235af7e0e6ee49f9fcacf3caac4b2e56a
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Sat Sep 19 10:19:06 2020 +0200
maven-archetypes: "royale-jewel-application-archetype" now has -DincludeCrux=true (so "royale-jewe-cruxl-application-archetype" can be removed). Also get more improvements like package creation and names based on artifactId
---
.../royale-jewel-application-archetype/pom.xml | 12 +++-
.../META-INF/archetype-post-generate.groovy | 71 ++++++++++++++++++
.../META-INF/maven/archetype-metadata.xml | 84 ++++++++++++++++++++++
.../main/resources/META-INF/maven/archetype.xml | 34 ---------
...pp.mxml.as3proj => __artifactId__.mxml.as3proj} | 4 +-
.../resources/archetype-resources/asconfig.json | 2 +-
.../src/main/resources/archetype-resources/pom.xml | 24 ++++++-
.../resources/jewel-example-index-template.html | 3 +-
.../main/royale/{App.mxml => __artifactId__.mxml} | 30 ++++++--
.../main/royale/{App.mxml => config/Beans.mxml} | 24 +++----
.../main/royale/events/SomeEvent.as} | 44 +++++++-----
.../main/royale/{App.mxml => views/MainView.mxml} | 27 +++----
12 files changed, 263 insertions(+), 96 deletions(-)
diff --git a/archetypes/royale-jewel-application-archetype/pom.xml b/archetypes/royale-jewel-application-archetype/pom.xml
index 1876ac8..221ab38 100644
--- a/archetypes/royale-jewel-application-archetype/pom.xml
+++ b/archetypes/royale-jewel-application-archetype/pom.xml
@@ -27,9 +27,19 @@
<artifactId>royale-jewel-application-archetype</artifactId>
<version>0.9.8-SNAPSHOT</version>
- <packaging>jar</packaging>
+ <packaging>maven-archetype</packaging>
<name>Apache Royale: Framework: Archetypes: Jewel Royale Application</name>
<description>Maven archetype for creating Royale Maven project for building a Jewel Royale application for JavaScript output.</description>
+ <build>
+ <extensions>
+ <extension>
+ <groupId>org.apache.maven.archetype</groupId>
+ <artifactId>archetype-packaging</artifactId>
+ <version>3.1.1</version>
+ </extension>
+ </extensions>
+ </build>
+
</project>
diff --git a/archetypes/royale-jewel-application-archetype/src/main/resources/META-INF/archetype-post-generate.groovy b/archetypes/royale-jewel-application-archetype/src/main/resources/META-INF/archetype-post-generate.groovy
new file mode 100644
index 0000000..a005cea
--- /dev/null
+++ b/archetypes/royale-jewel-application-archetype/src/main/resources/META-INF/archetype-post-generate.groovy
@@ -0,0 +1,71 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+// This script will be executed upon creating a project from this archetype.
+// https://maven.apache.org/archetype/maven-archetype-plugin/advanced-usage.html
+//
+// It will delete a the associated Crux folders if the value for the "includeCrux" property
+// is set to false.
+
+import java.io.File
+import java.nio.file.Files
+import java.nio.file.Path
+import java.nio.file.Paths
+import org.apache.commons.io.FileUtils
+
+println "*******************************"
+println " groovy post processing"
+println "*******************************"
+// println "artifactId: " + artifactId
+// println "request: " + request
+// println "archetypeArtifactId: " + request.getArchetypeArtifactId()
+// println "archetypeGroupId: " + request.getArchetypeGroupId()
+// println "archetypeVersion: " + request.getArchetypeVersion()
+// println "archetypeName: " + request.getArchetypeName()
+// println "artifactId: " + request.getArtifactId()
+// println "groupId: " + request.getGroupId()
+// println "version: " + request.getVersion()
+
+Properties properties = request.properties
+// println "Properties: " + properties
+// println "application: " + request.getProperties().getProperty("application")
+// println "moduele: " + request.getProperties().getProperty("module")
+
+// Application path
+Path appPath = Paths.get(request.outputDirectory, request.artifactId)// + File.separator + properties.get("application"))
+println "appPath prop : " + appPath
+String includeCrux = properties.get("includeCrux")
+println "includeCrux prop : " + includeCrux
+
+if (includeCrux.equals("false")) {
+ println "Not includin Crux - Deleting Crux files"
+
+ String packageProp = properties.get("package").equals('') ? "" : properties.get("package").replace(".", File.separator) + File.separator;
+ //println "package prop : " + packageProp
+ Path configPath = appPath.resolve("src" + File.separator + "main" + File.separator + "royale" + File.separator + packageProp + "config")
+ Path eventsPath = appPath.resolve("src" + File.separator + "main" + File.separator + "royale" + File.separator + packageProp + "events")
+
+ //String configurationFile = "Beans.mxml";
+ //Path cxfConfigPath = configPath.resolve(configurationFile)
+ //println "cxfConfigPath " + cxfConfigPath
+ //Files.deleteIfExists cxfConfigPath
+
+ FileUtils.deleteDirectory(configPath.toFile());
+ FileUtils.deleteDirectory(eventsPath.toFile());
+}
+println "*******************************"
\ No newline at end of file
diff --git a/archetypes/royale-jewel-application-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml b/archetypes/royale-jewel-application-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml
new file mode 100644
index 0000000..ade4552
--- /dev/null
+++ b/archetypes/royale-jewel-application-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<archetype-descriptor
+ xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.1.0
+ https://maven.apache.org/xsd/archetype-descriptor-1.1.0.xsd"
+ xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ name="${artifactId}">
+
+ <fileSets>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory>.vscode</directory>
+ <includes>
+ <include>**/*.json</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory></directory>
+ <includes>
+ <include>__artifactId__.mxml.as3proj</include>
+ <include>asconfig.json</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>**/*.html</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory>src/main/sass</directory>
+ <includes>
+ <include>**/*.sass</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory>src/main/royale</directory>
+ <includes>
+ <include>__artifactId__.mxml</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" packaged="true" encoding="UTF-8">
+ <directory>src/main/royale</directory>
+ <includes>
+ <include>**/*.mxml</include>
+ <include>**/*.as</include>
+ </includes>
+ <excludes>
+ <exclude>__artifactId__.mxml</exclude>
+ </excludes>
+ </fileSet>
+ <fileSet filtered="true" packaged="true" encoding="UTF-8">
+ <directory>src/test/royale</directory>
+ <includes>
+ <include>**/*.as</include>
+ <include>**/*.mxml</include>
+ </includes>
+ </fileSet>
+ </fileSets>
+
+ <requiredProperties>
+ <requiredProperty key="includeCrux">
+ <defaultValue>false</defaultValue>
+ </requiredProperty>
+ </requiredProperties>
+
+</archetype-descriptor>
diff --git a/archetypes/royale-jewel-application-archetype/src/main/resources/META-INF/maven/archetype.xml b/archetypes/royale-jewel-application-archetype/src/main/resources/META-INF/maven/archetype.xml
deleted file mode 100644
index e0174a4..0000000
--- a/archetypes/royale-jewel-application-archetype/src/main/resources/META-INF/maven/archetype.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
--->
-<archetype xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype/1.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype/1.0.0 http://maven.apache.org/xsd/archetype-1.0.0.xsd">
- <id>royale-jewel-application-archetype</id>
- <resources>
- <resource>.vscode/launch.json</resource>
- <resource>.vscode/tasks.json</resource>
- <resource>asconfig.json</resource>
- <resource>App.mxml.as3proj</resource>
- <resource>src/main/resources/jewel-example-index-template.html</resource>
- <resource>src/main/sass/default.sass</resource>
- <resource>src/main/sass/_global.sass</resource>
- <resource>src/main/royale/App.mxml</resource>
- </resources>
-</archetype>
diff --git a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/App.mxml.as3proj b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/__artifactId__.mxml.as3proj
similarity index 97%
rename from archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/App.mxml.as3proj
rename to archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/__artifactId__.mxml.as3proj
index fce3894..a2952cb 100644
--- a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/App.mxml.as3proj
+++ b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/__artifactId__.mxml.as3proj
@@ -21,7 +21,7 @@
<output>
<movie width="800"/>
<movie disabled="False"/>
- <movie path="bin-debug/App.swf"/>
+ <movie path="bin-debug/${artifactId}.swf"/>
<movie platform="Flash Player"/>
<movie fps="60"/>
<movie version="11"/>
@@ -48,7 +48,7 @@
<option benchmark="False"/>
<option showBindingWarnings="True"/>
<option warnings="True"/>
- <option customSDK="/Users/christofer.dutz/Downloads/MoonshineSDKs/Royale_SDK/apache-royale-0.9.6-bin-js/royale-asjs"/>
+ <option customSDK="/Users/christofer.dutz/Downloads/MoonshineSDKs/Royale_SDK/apache-royale-0.9.8-bin-js/royale-asjs"/>
<option showActionScriptWarnings="True"/>
<option antBuildPath="build/build.xml"/>
<option verboseStackTraces="False"/>
diff --git a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/asconfig.json b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/asconfig.json
index 1570950..9adcd62 100644
--- a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/asconfig.json
+++ b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/asconfig.json
@@ -32,6 +32,6 @@
"additionalOptions": "-js-dynamic-access-unknown-members=true",
"files":
[
- "src/main/royale/App.mxml"
+ "src/main/royale/${artifactId}.mxml"
]
}
diff --git a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/pom.xml b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/pom.xml
index 4cce7e3..b425971 100644
--- a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/pom.xml
+++ b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/pom.xml
@@ -48,11 +48,21 @@
<version>${royale.compiler.version}</version>
<extensions>true</extensions>
<configuration>
- <mainClass>App.mxml</mainClass>
+ <mainClass>\${artifactId}.mxml</mainClass>
<targets>JSRoyale</targets>
<debug>false</debug>
<htmlTemplate>${dollar}{basedir}/src/main/resources/jewel-example-index-template.html</htmlTemplate>
- <additionalCompilerOptions>-source-map=true;</additionalCompilerOptions>
+ <additionalCompilerOptions>
+ -source-map=true;
+#if (${includeCrux} == 'true' || ${includeCrux} == 'yes' || ${includeCrux} == 'y')
+ -js-default-initializers=true;
+ -compiler.exclude-defaults-css-files=MXRoyale-${royale.framework.version}-js.swc:defaults.css;
+ -keep-as3-metadata+=Inject,Dispatcher,EventHandler,PostConstruct,PreDestroy,ViewAdded,ViewRemoved,Bindable,Transient;
+ -keep-code-with-metadata=Inject;
+#end
+ <!-- to access JSON object graph subobjects -->
+ <!-- -js-dynamic-access-unknown-members=true; -->
+ </additionalCompilerOptions>
</configuration>
<dependencies>
<dependency>
@@ -132,6 +142,16 @@
<type>swc</type>
<classifier>js</classifier>
</dependency>
+#if (${includeCrux} == 'true' || ${includeCrux} == 'yes' || ${includeCrux} == 'y')
+
+ <dependency>
+ <groupId>org.apache.royale.framework</groupId>
+ <artifactId>Crux</artifactId>
+ <version>0.9.8-SNAPSHOT</version>
+ <type>swc</type>
+ <classifier>js</classifier>
+ </dependency>
+#end
<!-- Needed for JavaScript compilation -->
<dependency>
diff --git a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/resources/jewel-example-index-template.html b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/resources/jewel-example-index-template.html
index 140ba98..d33d42b 100644
--- a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/resources/jewel-example-index-template.html
+++ b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/resources/jewel-example-index-template.html
@@ -14,13 +14,14 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
+#set($dollar = '$')
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Custom Template for injecting custom style CSS">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">
- <link rel="stylesheet" type="text/css" href="${application}.css">
+ <link rel="stylesheet" type="text/css" href="${dollar}{application}.css">
<link href="https://fonts.googleapis.com/css?family=Lato:400,700" rel="stylesheet">
${head}
</head>
diff --git a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/App.mxml b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/__artifactId__.mxml
similarity index 50%
copy from archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/App.mxml
copy to archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/__artifactId__.mxml
index 3a21b27..0ac287f 100644
--- a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/App.mxml
+++ b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/__artifactId__.mxml
@@ -17,20 +17,40 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
+#set($finalpackage = "#if($package != '')$package.#{else}#end")
<j:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
- xmlns:js="library://ns.apache.org/royale/basic"
- xmlns:j="library://ns.apache.org/royale/jewel">
+ xmlns:js="library://ns.apache.org/royale/basic"
+ xmlns:j="library://ns.apache.org/royale/jewel"
+#if (${includeCrux} == 'true' || ${includeCrux} == 'yes' || ${includeCrux} == 'y')
+ xmlns:crux="library://ns.apache.org/royale/crux"
+ xmlns:config="${finalpackage}config.*"
+#end
+ xmlns:views="${finalpackage}views.*">
<!-- <fx:Style source="../../main/resources/default.css"/> -->
<j:valuesImpl>
<js:SimpleCSSValuesImpl />
</j:valuesImpl>
+#if (${includeCrux} == 'true' || ${includeCrux} == 'yes' || ${includeCrux} == 'y')
+ <j:beads>
+ <crux:JSStageEvents packageExclusionFilter="_default_"/>
+ <crux:Crux>
+ <crux:beanProviders>
+ <config:Beans/>
+ </crux:beanProviders>
+ <crux:config>
+ <crux:CruxConfig
+ eventPackages="${finalpackage}events.*"
+ viewPackages="${finalpackage}views.*"
+ />
+ </crux:config>
+ </crux:Crux>
+ </j:beads>
+#end
<j:initialView>
- <j:View>
- <j:Label text="Hello World!"/>
- </j:View>
+ <views:MainView width="100%" height="100%"/>
</j:initialView>
</j:Application>
diff --git a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/App.mxml b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/config/Beans.mxml
similarity index 63%
copy from archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/App.mxml
copy to archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/config/Beans.mxml
index 3a21b27..9efab2a 100644
--- a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/App.mxml
+++ b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/config/Beans.mxml
@@ -17,20 +17,12 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
-<j:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
- xmlns:js="library://ns.apache.org/royale/basic"
- xmlns:j="library://ns.apache.org/royale/jewel">
+<crux:BeanProvider
+ xmlns:fx="http://ns.adobe.com/mxml/2009"
+ xmlns:crux="library://ns.apache.org/royale/crux"
+ xmlns:mx="library://ns.apache.org/royale/mx">
+
+ <!-- Add beans -->
+ <!-- <mx:HTTPService id="service"/> -->
- <!-- <fx:Style source="../../main/resources/default.css"/> -->
-
- <j:valuesImpl>
- <js:SimpleCSSValuesImpl />
- </j:valuesImpl>
-
- <j:initialView>
- <j:View>
- <j:Label text="Hello World!"/>
- </j:View>
- </j:initialView>
-
-</j:Application>
+</crux:BeanProvider>
diff --git a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/asconfig.json b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/events/SomeEvent.as
similarity index 60%
copy from archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/asconfig.json
copy to archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/events/SomeEvent.as
index 1570950..f2ba5c8 100644
--- a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/asconfig.json
+++ b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/events/SomeEvent.as
@@ -16,22 +16,30 @@
// limitations under the License.
//
////////////////////////////////////////////////////////////////////////////////
+#set($finalpackage = "#if($package != '')$package.#{else}#end")
+package ${finalpackage}events
{
- "config": "royale",
- "compilerOptions": {
- "debug": false,
- "targets": ["JSRoyale"],
- "source-path": [
- "src/main/resources"
- ],
- "source-map": true,
- "html-template": "src/main/resources/jewel-example-index-template.html",
- "theme": "${royalelib}/themes/JewelTheme/src/main/resources/defaults.css"
- },
- "copySourcePathAssets": true,
- "additionalOptions": "-js-dynamic-access-unknown-members=true",
- "files":
- [
- "src/main/royale/App.mxml"
- ]
-}
+ import org.apache.royale.events.Event;
+
+ /**
+ * Some Event
+ */
+ public class SomeEvent extends Event
+ {
+ /**
+ * Actions
+ */
+ public static const SOME_ACTION:String = "some_action";
+
+ /**
+ * constructor
+ *
+ * This is just a normal Royale event which will be dispatched from a view instance.
+ * The only thing to note is that we set 'bubbles' to true, so that the event will bubble
+ * up the 'display' list, allowing Crux to listen for your events.
+ */
+ public function SomeEvent(type:String) {
+ super(type, true);
+ }
+ }
+}
\ No newline at end of file
diff --git a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/App.mxml b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/views/MainView.mxml
similarity index 63%
rename from archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/App.mxml
rename to archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/views/MainView.mxml
index 3a21b27..22a7894 100644
--- a/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/App.mxml
+++ b/archetypes/royale-jewel-application-archetype/src/main/resources/archetype-resources/src/main/royale/views/MainView.mxml
@@ -17,20 +17,15 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
-<j:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
- xmlns:js="library://ns.apache.org/royale/basic"
- xmlns:j="library://ns.apache.org/royale/jewel">
-
- <!-- <fx:Style source="../../main/resources/default.css"/> -->
-
- <j:valuesImpl>
- <js:SimpleCSSValuesImpl />
- </j:valuesImpl>
-
- <j:initialView>
- <j:View>
- <j:Label text="Hello World!"/>
- </j:View>
- </j:initialView>
+<j:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+ xmlns:j="library://ns.apache.org/royale/jewel"
+ xmlns:js="library://ns.apache.org/royale/basic">
-</j:Application>
+ <j:VGroup>
+#if (${includeCrux} == 'true' || ${includeCrux} == 'yes' || ${includeCrux} == 'y')
+ <j:Label text="Hello Jewel + Crux!"/>
+#else
+ <j:Label text="Hello Jewel!"/>
+#end
+ </j:VGroup>
+</j:View>
\ No newline at end of file