Apache Tapestry - 快速入门
安装 Tapestry 后,让我们使用 Maven 创建一个新的初始项目,如下所示 −
$ mvn archetype:generate -DarchetypeCatalog=http://tapestry.apache.org
您可以看到如下所示的响应 −
[INFO] Scanning for projects... [INFO] [INFO] --------------------------------------------------------------------------------- [INFO] Building Maven Stub Project (No POM) 1 [INFO] --------------------------------------------------------------------------------- [INFO] [INFO] >>> maven-archetype-plugin:2.4:generate (default-cli) > generatesources @ standalone-pom >>> [INFO] [INFO] <<< maven-archetype-plugin:2.4:generate (default-cli) < generatesources @ standalone-pom <<< [INFO] [INFO] --- maven-archetype-plugin:2.4:generate (default-cli) @ standalone-pom --- [INFO] Generating project in Interactive mode [INFO] No archetype defined. Using maven-archetype-quickstart (org.apache.maven.archetypes:maven-archetype-quickstart:1.0)
Maven构建完所有操作后,选择archetype创建Tapestry 5 QuickStart项目,如下 −
选择原型 −
https://tapestry.apache.org → org.apache.tapestry:quickstart (Tapestry 5 Quickstart Project)
https://tapestry.apache.org → org.apache.tapestry:tapestry-archetype (Tapestry 4.1.6 Archetype)
选择号码或应用过滤器 (format: [groupId:]artifactId, case sensitive contains): : 1
现在您将收到如下所示的响应 −
Choose org.apache.tapestry:quickstart version: 1: 5.0.19 2: 5.1.0.5 3: 5.2.6 4: 5.3.7 5: 5.4.1
按如下方式提取快速入门版本号 −
Choose a number: 5: 5
此处,快速入门项目采用选项 5 的版本"5.4.1"。 现在,Tapestry原型一一询问以下信息,如下 −
5.1 groupId − 定义属性"groupId"的值::com.example
5.2 artifactId − 定义属性"artifactId"的值::Myapp
5.3 version − 定义属性"version"的值:1.0-SNAPSHOT: :
5.4 package name − 定义属性"package"的值: com.example: : com.example.Myapp
现在您的屏幕要求您确认 −
确认属性配置 −
groupId − com.example
artifactId − Myapp
version − 1.0-SNAPSHOT
package − com.example.Myapp
验证所有属性并使用下面所示的选项确认更改 −
Y: : Y
您将看到如下所示的屏幕。
[INFO] --------------------------------------------------------------------------------- [INFO] Using following parameters for creating project from Archetype: quickstart:5.4.1 [INFO] --------------------------------------------------------------------------------- [INFO] Parameter: groupId, Value: com.example [INFO] Parameter: artifactId, Value: Myapp [INFO] Parameter: version, Value: 1.0-SNAPSHOT [INFO] Parameter: package, Value: com.example.Myapp [INFO] Parameter: packageInPathFormat, Value: com/example/Myapp [INFO] Parameter: package, Value: com.example.Myapp [INFO] Parameter: version, Value: 1.0-SNAPSHOT [INFO] Parameter: groupId, Value: com.example [INFO] Parameter: artifactId, Value: Myapp [WARNING] Don't override file /Users/workspace/tapestry/Myapp/src/test/java [WARNING] Don't override file /Users/workspace/tapestry/Myapp/src/main/webapp [WARNING] Don't override file /Users/workspace/tapestry/Myapp/src/main/resources/com/ example/Myapp [WARNING] Don't override file /Users/workspace/tapestry/Myapp/src/test/resource [WARNING] Don't override file /Users/workspace/tapestry/Myapp/src/test/conf [WARNING] Don't override file /Users/workspace/tapestry/Myapp/src/site [INFO] project created from Archetype in dir: /Users/workspace/tapestry/Myapp [INFO] --------------------------------------------------------------------------------- [INFO] BUILD SUCCESS [INFO] --------------------------------------------------------------------------------- [INFO] Total time: 11:28 min [INFO] Finished at: 2016-09-14T00:47:23+05:30 [INFO] Final Memory: 14M/142M [INFO] ---------------------------------------------------------------------------------
到这里,您已经成功构建了 Tapestry Quick Start 项目。 使用以下命令移动到新创建的 Myapp 目录的位置并开始编码。
cd Myapp
运行应用程序
要运行 skeleton 项目,请使用以下命令。
mvn jetty:run -Dtapestry.execution-mode=development
你会看到这样的屏幕,
[INFO] Scanning for projects... [INFO] [INFO] --------------------------------------------------------------------------------- [INFO] Building Myapp Tapestry 5 Application 1.0-SNAPSHOT [INFO] --------------------------------------------------------------------------------- ........ ........ ........ Application 'app' (version 1.0-SNAPSHOT-DEV) startup time: 346 ms to build IoC Registry, 1,246 ms overall. ______ __ ____ /_ __/__ ____ ___ ___ / /_______ __ / __/ / / / _ `/ _ \/ -_|_-</ __/ __/ // / /__ \ /_/ \_,_/ .__/\__/___/\__/_/ \_, / /____/ /_/ /___/ 5.4.1 (development mode) [INFO] Started SelectChannelConnector@0.0.0.0:8080 [INFO] Started Jetty Server
到目前为止,我们已经在 Tapestry 中创建了一个基本的快速入门项目。 要在 Web 浏览器中查看正在运行的应用程序,只需在地址栏中键入以下 URL 并按 Enter −
https://localhost:8080/myapp
这里,myapp是应用程序的名称,开发模式下应用程序的默认端口是8080。
使用 Eclipse
在上一章中,我们讨论了如何在 CLI 中创建 Tapestry 快速启动应用程序。 本章介绍如何在 Eclipse IDE 中创建框架应用程序。
让我们使用 Maven 原型来创建骨架应用程序。 要配置新应用程序,您可以按照以下步骤操作。
第 1 步:打开 Eclipse IDE
打开 Eclipse 并选择 File → New → Project… → 选项,如以下屏幕截图所示。
现在,选择 Maven → Maven project 选项。
注意 − 如果未配置 Maven,则配置并创建项目。
选择 Maven 项目后,单击"下一步",然后再次单击"下一步"按钮。
之后,您将看到一个屏幕,您应该在其中选择配置选项。 配置完成后,您将看到以下屏幕。
第 2 步:目录配置
第一步完成后,您应该单击添加远程目录。 然后添加以下更改,如下面的屏幕截图所示。
现在,添加了 Apache Tapestry 目录。 然后,选择过滤器选项 org.apache.tapestry Quickstart 5.4.1,如下所示。
然后单击"下一步",将出现以下屏幕。
第3步:配置GroupId、ArtifactId、版本和包
向 Tapestry 目录配置添加以下更改。
然后单击"完成"按钮,现在我们已经创建了第一个 skeleton 应用程序。 第一次使用 Maven 时,项目创建可能需要一段时间,因为 Maven 会下载 Maven、Jetty 和 Tapestry 的许多 JAR 依赖项。 Maven 完成后,您将在 Package Explorer 视图中看到一个新目录 MyFirstApplication。
第 4 步:使用 Jetty 服务器运行应用程序
您可以使用Maven直接运行Jetty。 在 Package Explorer 视图中右键单击 MyFirstApplication 项目并选择 Run As → Maven Build…,您将看到如下所示的屏幕。
在配置对话框中,输入目标选项"jetty:run",然后单击"运行"按钮。
Jetty 初始化后,您将在控制台中看到以下屏幕。
第 5 步:在网络浏览器中运行
键入以下 URL 以在 Web 浏览器中运行应用程序 –
https://loclhost:8080/MyFirstApplication
第 6 步:停止 Jetty 服务器
要停止 Jetty 服务器,请单击控制台中的红色方形图标,如下所示。