Difference between revisions of "GCube Project Layout"

From Gcube Wiki
Jump to: navigation, search
(Project Layout Explained)
Line 28: Line 28:
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! Dir or File
+
! File or Directory
 
! Role
 
! Role
 
|-
 
|-
Line 34: Line 34:
 
| an XML file that contains information about the project and configuration details used by Maven to build the project.
 
| an XML file that contains information about the project and configuration details used by Maven to build the project.
 
|-
 
|-
| src/main/java
+
| src/main/java/
 
| application source code
 
| application source code
 
|-
 
|-
| src/main/webapp
+
| src/main/webapp/
 
| web application source code
 
| web application source code
 
|-
 
|-
| src/main/resources
+
| src/main/resources/
 
| resources packaged in the output jar/war
 
| resources packaged in the output jar/war
 
|-
 
|-
| src/test/java
+
| src/test/java/
 
| source code for tests
 
| source code for tests
 
|-
 
|-
| src/test/resources
+
| src/test/resources/
 
| resources available on the test classpath
 
| resources available on the test classpath
 
|}
 
|}

Revision as of 02:37, 26 July 2020

Standard Project Layout

gCube projects for new software components are primarily developed with the Java language using Maven as build automation tool. The layout of a project mostly reflects the common conventions used for Maven with some variations.

- project folder/
  |
  |-src/
     |-main/
        |-java/
        |-webapp/
        |-resources/
     |-test/
        |-java/
        |-resources/
  |-gcube/
     |-extra-resources
        |-WEB-INF/
        |-META-INF/  
  |-pom.xml
  |-CHANGELOG.md
  |-LICENSE.md
  |-README.md
  |-FUNDING.md

Project Layout Explained

File or Directory Role
pom.xml an XML file that contains information about the project and configuration details used by Maven to build the project.
src/main/java/ application source code
src/main/webapp/ web application source code
src/main/resources/ resources packaged in the output jar/war
src/test/java/ source code for tests
src/test/resources/ resources available on the test classpath