Skip to content
Permalink
Browse files
IGNITE-14558 Add information about javadoc validation and generation …
…commands to DEVNOTES.md (#97)
  • Loading branch information
vveider committed Apr 21, 2021
1 parent 3565c9d commit 73befa6cec07f6e3dbb5d2e1d84b90fe145d8983
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 7 deletions.
@@ -2,14 +2,16 @@
* [Building Ignite](#building-ignite)
* [Running sanity checks](#running-sanity-checks)
* [Running tests](#running-tests)
* [Checking and generating Javadoc](#checking-and-generating-javadoc)
* [Setting up IntelliJ Idea project](#setting-up-intellij-idea-project)
* [Code structure](#code-structure)
* [Release candidate verification](#release-candidate-verification)

***

## Prerequisites
* Java 11 SDK
* Maven 3.6.0+ (for building)
***


## Building Ignite
@@ -18,15 +20,14 @@ Ignite follows standard guidelines for multi-module maven projects, so it can be
mvn clean package [-DskipTests]
```
Upon build completion, CLI tool can be found be under `modules/cli/target` directory. Use `ignite` on Linux and MacOS, or `ignite.exe` on Windows.
***


## Running sanity checks
### Code style
Code style is checked with [Apache Maven Checkstyle Plugin](https://maven.apache.org/plugins/maven-checkstyle-plugin/).

[Checkstyle rules](check-rules/checkstyle-rules.xml).

[Checkstyle suppressions](check-rules/checkstyle-suppressions.xml).
* [Checkstyle rules](check-rules/checkstyle-rules.xml)
* [Checkstyle suppressions](check-rules/checkstyle-suppressions.xml)
```
mvn clean checkstyle:checkstyle-aggregate
```
@@ -41,12 +42,12 @@ License headers check result is generated at `target/rat.txt`

### PMD
Static code analyzer is run with [Apache Maven PMD Plugin](https://maven.apache.org/plugins/maven-pmd-plugin/). Precompilation is required 'cause PMD shoud be run on compiled code.

[PMD rules](check-rules/pmd-rules.xml).
* [PMD rules](check-rules/pmd-rules.xml)
```
mvn clean compile pmd:check
```
PMD check result (only if there are any violations) is generated at `target/pmd.xml`.
***


## Running tests
@@ -62,6 +63,26 @@ Run integration tests only:
```
mvn integration-test -Dskip.surefire.tests
```
***


## Checking and generating Javadoc
Javadoc is generated and checked for correctness with [Maven Javadoc Plugin](https://maven.apache.org/plugins/maven-javadoc-plugin/).

Check Javadoc is correct (precompilation is required for resolving internal dependencies):
```
mvn compile javadoc:javadoc
```
Build Javadoc jars (found in `target` directory of module):
```
mvn package -P javadoc -Dmaven.test.skip
```
Build Javadoc site (found in `target/site/apidocs/index.html`):
```
mvn compile javadoc:aggregate -P javadoc
```
>ℹ `javadoc` profile is required for excluding internal classes
***

## Setting up IntelliJ Idea project
@@ -74,10 +95,12 @@ After opening the project in IntelliJ, double check that the Java SDK is properl
language features

Ignite uses machine code generation for some of it's modules. To generate necessary production code, build the project using maven (see [Building Ignite](#building-ignite)).
***


## Code structure
High-level modules structure and detailed modules description can be found in the [modules readme](modules/README.md).
***


## Release candidate verification
@@ -340,6 +340,24 @@
<id>javadoc</id>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>timestamp-property</id>
<goals>
<goal>timestamp-property</goal>
</goals>
<phase>validate</phase>
<configuration>
<name>current.year</name>
<pattern>yyyy</pattern>
</configuration>
</execution>
</executions>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>

0 comments on commit 73befa6

Please sign in to comment.