[[BackLinksMenu]] = Platform Structure = == Development Structure == * These folders are stored in the Repository: [[BR]] ||'''/trunk/sophie2-platform'''|| ||'''/trunk/sophie2-platform/.settings'''||sophie2-platform project settings configurations for Eclipse|| ||'''/trunk/sophie2-platform/dev-tools'''||contains files that are used to run the whole project.|| ||'''/trunk/sophie2-platform/dev-tools/eclipse-templates'''||contains useful templates for eclipse.|| ||'''/trunk/sophie2-platform/dev-tools/org.sophie2.proto.project'''||"skeleton" used for creating new modules|| ||'''/trunk/sophie2-platform/doc'''||contains files that are part of different project documents (wiki pages, documentation)|| ||'''/trunk/sophie2-platform/doc/uml-design-diagrams'''||contains the designed UML diagrams for Sophie components.|| ||'''/trunk/sophie2-platform/doc/spec_diagrams'''||contains UI diagrams for the specification.|| ||'''/trunk/sophie2-platform/old'''||contains our progress until 07.2008, before module decomposition|| ||'''/trunk/sophie2-platform/modules'''|| * Each module in /modules has the following structure ||'''/trunk/sophie2-platform/modules/org.sophie2.*/'''|| ||'''/trunk/sophie2-platform/modules/org.sophie2.*/.settings'''||project settings configurations for Eclipse. They must be synchronized with the sophie2-platform project settings|| ||'''/trunk/sophie2-platform/modules/org.sophie2.*/target'''||contains compiled classes|| ||'''/trunk/sophie2-platform/modules/org.sophie2.*/src'''||contains sources and configuration files|| ||'''/trunk/sophie2-platform/modules/org.sophie2.*/src/test/java'''||contains unit tests|| ||'''/trunk/sophie2-platform/modules/org.sophie2.*/src/test/resources'''||contains unit tests' tools (scripts, documentation, needed files for the tests)|| ||'''/trunk/sophie2-platform/modules/org.sophie2.*/src/main'''|| ||'''/trunk/sophie2-platform/modules/org.sophie2.*/src/main/resources'''||contains the resources which the module uses|| ||'''/trunk/sophie2-platform/modules/org.sophie2.*/src/main/resources/distrib'''||each module contains its own distrib folder it is used it contains the files which will be installed on the users machine in order each module to be completely funtional|| ||'''/trunk/sophie2-platform/modules/org.sophie2.*/src/main/java'''|| ||'''/trunk/sophie2-platform/modules/org.sophie2.*/src/main/java/org'''|| ||'''/trunk/sophie2-platform/modules/org.sophie2.*/src/main/java/org/sophie2'''||contains application sources|| except author module, which doesn't need test section. == Runtime Structure == * For each module when built with maven a target folder is created, which has the following structure ||'''target/'''|| contains the .jar files, which are packaged fully-functional modules (without the tests) || ||'''target/classes'''|| ||'''target/classes/META_INF'''||contains meta information that is needed for the .jar file to be executed|| ||'''target/classes/org/sophie2/ [module_name]'''||contains the compiled source classes|| ||'''target/classes/[contents of /src/main/resources]'''||contains needed resources|| ||'''target/test-classes'''||includes copies of the compiled tests || ||'''target/distrib'''||contains the files that will be copied on the user's machine during the setup process and will be enough for the project to be completely functional||