From 7e5cadc0a6637bb519e55ad336ce16b272df5e37 Mon Sep 17 00:00:00 2001 From: Dominik Grzelak Date: Tue, 28 May 2024 11:30:14 +0200 Subject: [PATCH] added build instruction for generating Java API documentation (now also publically available); modified Readme and community contribution guidelines to point to documentation (solves issue #1) --- CONTRIBUTING.md | 6 ++--- README.md | 30 ++++++++++++++++++++--- pom.xml | 63 ++++++++++++++++++++++++++++++++++++++++++------- 3 files changed, 85 insertions(+), 14 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3e2cbe7..26e6677 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -30,7 +30,7 @@ to . ## I Have a Question -> If you want to ask a question, we assume that you have read the available [Documentation](https://github.com/bigraph-toolkit-suite/bigraphs.grgen-bigraphs/blob/main/README.md). +> If you want to ask a question, we assume that you have read the available [Project Documentation](https://github.com/bigraph-toolkit-suite/bigraphs.grgen-bigraphs/blob/main/README.md) and [Java API Documentation](https://docshoster.org/p/bigraph-toolkit-suite/bigraphs.grgen-bigraphs/latest/introduction.html). Before you ask a question, it is best to search for existing [Issues](https://github.com/bigraph-toolkit-suite/bigraphs.grgen-bigraphs//issues) that might help you. In case you have found a suitable issue and still need clarification, you can write your question in this issue. It is also advisable to search the internet for answers first. @@ -55,7 +55,7 @@ We will then take care of the issue as soon as possible. A good bug report shouldn't leave others needing to chase you up for more information. Therefore, we ask you to investigate carefully, collect information and describe the issue in detail in your report. Please complete the following steps in advance to help us fix any potential bug as fast as possible. - Make sure that you are using the latest version. -- Determine if your bug is really a bug and not an error on your side, e.g. using incompatible environment components/versions (Make sure that you have read the [documentation](https://github.com/bigraph-toolkit-suite/bigraphs.grgen-bigraphs/blob/main/README.md)). +- Determine if your bug is really a bug and not an error on your side, e.g. using incompatible environment components/versions (Make sure that you have read the [Project Documentation](https://github.com/bigraph-toolkit-suite/bigraphs.grgen-bigraphs/blob/main/README.md) and [Java API Documentation](https://docshoster.org/p/bigraph-toolkit-suite/bigraphs.grgen-bigraphs/latest/introduction.html)). - To see if other users have experienced (and potentially already solved) the same issue you are having, check if there is not already a bug report existing for your bug or error in the [bug tracker](https://github.com/bigraph-toolkit-suite/bigraphs.grgen-bigraphs/issues?q=label%3Abug). - Also make sure to search the internet (including Stack Overflow) to see if users outside the GitHub community have discussed the issue. - Collect information about the bug: @@ -92,7 +92,7 @@ This section guides you through submitting an enhancement suggestion for bigraph #### Before Submitting an Enhancement - Make sure that you are using the latest version. -- Read the [documentation](https://github.com/bigraph-toolkit-suite/bigraphs.grgen-bigraphs/blob/main/README.md) carefully and find out if the functionality is already covered, maybe by an individual configuration. +- Read the [Project Documentation](https://github.com/bigraph-toolkit-suite/bigraphs.grgen-bigraphs/blob/main/README.md) and [Java API Documentation](https://docshoster.org/p/bigraph-toolkit-suite/bigraphs.grgen-bigraphs/latest/introduction.html) carefully and find out if the functionality is already covered, maybe by an individual configuration. - Perform a [search](https://github.com/bigraph-toolkit-suite/bigraphs.grgen-bigraphs//issues) to see if the enhancement has already been suggested. If it has, add a comment to the existing issue instead of opening a new one. - Find out whether your idea fits with the scope and aims of the project. It's up to you to make a strong case to convince the project's developers of the merits of this feature. Keep in mind that we want features that will be useful to the majority of our users and not just a small subset. If you're just targeting a minority of users, consider writing an add-on/plugin library. diff --git a/README.md b/README.md index 93493d6..e826e98 100755 --- a/README.md +++ b/README.md @@ -1,9 +1,14 @@ # BiGGer: A Model Transformation Tool for Bigraph Rewriting with GrGen.NET -**Version:** 1.1 +**Stable Version:** 1.1.0 +**Development Version:** 2.0-SNAPSHOT [![DOI](https://zenodo.org/badge/715108447.svg)](https://zenodo.org/doi/10.5281/zenodo.10803175) + + + + ---- This project provides a model transformation tool called **BiGGer** that translates bigraphs and bigraphical reactive systems (BRS) to several [GrGen.NET](https://grgen.de/)-compatible model files that can be executed. @@ -379,7 +384,7 @@ Conversion finished successfully. All model files are created in the folder /grg - `./src/`: The complete source code of this project including unit tests. - `./libs/`: Additional Java libraries required for the development. Must be installed in the local Maven repository first. -### Pre-Build Binary +### Executing the Binary An executable tool in form of a `*.jar` is provided within the `./bin/` directory of this project after [building](#build-configuration). @@ -391,7 +396,7 @@ java -jar bigger.jar -h ### Build Configuration -There are also three other options for building this project from source as described next. +There are three options for building this project from source as described next. The recommended one is the Fat-JAR approach designed for portability. @@ -437,6 +442,25 @@ mvn clean install -PlocalM2 java -jar ./target/localM2--.jar ``` +### Building the Documentation + +The Java API Documentation for all versions (stable releases, SNAPSHOT releases, ...) +of **BiGGer** is available [here](https://docshoster.org/p/bigraph-toolkit-suite/bigraphs.grgen-bigraphs/latest/introduction.html). + +To manually generate the Java API documentation with javadoc, the `JAVA_HOME` environment variable must be configured. +Under Linux this can be achieved as follows: `export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:bin/javac::")`. +Check that Java matches the [Requirements](#requirements). + +Finally, run this command to build the API documentation: +```shell +mvn javadoc:javadoc -Pdocs +``` + +A dedicated profile `docs` is available that can be combined with other profiles and Maven goals +(refer also to [Build Configuration](#build-configuration)). + +The generated API documentation can be found at `target/apidocs/` from the root of this project. + ## Troubleshooting If you get errors while using **BiGGer**, GrGen.NET or yComp, this section provides some help. diff --git a/pom.xml b/pom.xml index 133af55..e2386e8 100755 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,8 @@ GrGen.NET for Bigraphs - BiGGer is a transformation tool and library that translates bigraphical models and rules to GrGen.NET-compatible files. + BiGGer is a transformation tool and library that translates bigraphical models and rules to GrGen.NET-compatible + files. It enables bigraph rewriting using GrGen.NET. https://github.com/bigraph-toolkit-suite/bigraphs.grgen-bigraphs @@ -139,17 +140,45 @@ + + docs + + + + + org.apache.maven.plugins + maven-javadoc-plugin + + false + ${java.version} + false + package + BiGGer - Java API Documentation (Version: ${project.version}). + + + © 2024 Dominik Grzelak. All rights reserved. BiGGer v${project.version}. + + ]]> + + + + + + attach-javadocs + + jar + + + + + + + - - org.apache.maven.plugins - maven-compiler-plugin - - - maven-jar-plugin - org.apache.maven.plugins @@ -165,6 +194,19 @@ + + org.apache.maven.plugins + maven-compiler-plugin + + + maven-jar-plugin + + + maven-javadoc-plugin + + true + + @@ -245,6 +287,11 @@ maven-clean-plugin 3.3.1 + + org.apache.maven.plugins + maven-javadoc-plugin + 3.2.0 +