bg left:40% 80%

Introduction to PV168


Course Information

1) Seminar groups 2) Project 3) Workshops for team leads 4) Lectures (optional)


Seminar Groups


Project


Project Schedule

1) Initial GUI 2) The basics of the business logic 3) The persistence


Team Lead


Workshops

1) After the first milestone


Lectures


bg left:40% 80%

Git Culture


Git Commits


Git Commits

auto


Feature Branches


Merge Requests & Code Reviews


bg left:40% 80%

Apache Maven


bg right:40% 80%

Distribution Intermezzo

What does it take to build, distribute & run java application?

What are the distribution options?


What is Maven


Maven’s Goals

  1. Making the build process eas(y/ier)
  2. Providing a uniform build system
  3. Providing quality project information
  4. Encouraging better development practices

Maven What?

  1. Describes how to build your project via POM file descriptor
  2. Allows you to define useful metadata about your project
  3. Provides dependency management
  4. There are reasonable defaults

Project structure

project_root
|- src
    |- main
        |- java
        |- resources
    |- test
        |- java
        |- resources
|- pom.xml

Project Object Model

<project>
    <modelVersion>4.0.0</modelVersion>

    <groupId>cz.muni.fi.pv168</groupId>
    <artifactId>zinger</artifactId>
    <version>1.0-SNAPSHOT</version>
</project>

Maven Dependencies


POM Example

Let’s look at full pom.xml


Maven Alternatives

“I don’t like it, what are the other options?”