Apache Tapestry - 项目布局
这里是 Maven Quickstart CLI 创建的源代码的布局。 此外,这是标准 Tapestry 应用程序的建议布局。
├── build.gradle ├── gradle │ └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── pom.xml ├── src │ ├── main │ │ ├── java │ │ │ └── com │ │ │ └── example │ │ │ └── MyFirstApplication │ │ │ ├── components │ │ │ ├── data │ │ │ ├── entities │ │ │ ├── pages │ │ │ └── services │ │ ├── resources │ │ │ ├── com │ │ │ │ └── example │ │ │ │ └── MyFirstApplication │ │ │ │ ├── components │ │ │ │ ├── logback.xml │ │ │ │ └── pages │ │ │ │ └── Index.properties │ │ │ ├── hibernate.cfg.xml │ │ │ └── log4j.properties │ │ └── webapp │ │ ├── favicon.ico │ │ ├── images │ │ │ └── tapestry.png │ │ ├── mybootstrap │ │ │ ├── css │ │ │ │ ├── bootstrap.css │ │ │ │ └── bootstrap-theme.css │ │ │ ├── fonts │ ├── glyphicons-halflings-regular.eot │ │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ │ └── glyphicons-halflings-regular.woff2 │ │ │ └── js │ │ └── WEB-INF │ │ ├── app.properties │ │ └── web.xml │ ├── site │ │ ├── apt │ │ │ └── index.apt │ │ └── site.xml │ └── test │ ├── conf │ │ ├── testng.xml │ │ └── webdefault.xml │ ├── java │ │ └── PLACEHOLDER │ └── resources │ └── PLACEHOLDER └── target ├── classes │ ├── com │ │ └── example │ │ └── MyFirstApplication │ │ ├── components │ │ ├── data │ │ ├── entities │ │ ├── logback.xml │ │ ├── pages │ │ │ └── Index.properties │ │ └── services │ ├── hibernate.cfg.xml │ └── log4j.properties ├── m2e-wtp │ └── web-resources │ └── META-INF │ ├── MANIFEST.MF │ └── maven │ └── com.example │ └──MyFirstApplication │ ├── pom.properties │ └── pom.xml ├── test-classes │ └── PLACEHOLDER └── work ├── jsp ├── sampleapp.properties └── sampleapp.script
默认布局的排列方式类似于WAR 内部文件格式。 使用 WAR 格式有助于无需打包和部署即可运行应用程序。 此布局只是一个建议,但如果在部署时将应用程序打包为正确的 WAR 格式,则可以将应用程序安排为任何格式。
源代码可以分为以下四个主要部分。
Java 代码 − 所有java源代码都放在/src/main/java文件夹下。 Tapestry 页面类位于"Pages"文件夹下,Tapestry 组件类位于 Components 文件夹下。 Tapestry 服务类位于 services 文件夹下。
ClassPath 资源 − 在 Tapestry 中,大多数类都有关联的资源(XML 模板、JavaScript 文件等)。 这些资源位于 /src/main/resources 文件夹下。 Tapestry 页面类在"Pages"文件夹下有其关联的资源,Tapestry 组件类在 Components 文件夹下有其关联的资源。 这些资源打包在WAR的WEB-INF/classes文件夹中。
上下文资源 − 它们是 Web 应用程序的静态资源,例如图像、样式表和 JavaScript 库/模块。 它们通常位于 /src/main/webapp 文件夹下,称为上下文资源。 另外,Web 应用程序描述文件(Java Servlet 的)web.xml 放置在上下文资源的WEB-INF 文件夹下。
测试代码 − 这些是用于测试应用程序的可选文件,位于 src/test/java 和 src/test/Resources 文件夹下。 它们没有打包到 WAR 中。