Replace shell script with Maven build system and move source code to comply with Maven standard build layout.
We have encountered some friction in building the package using the shell script because some manual steps must be taken to create output directories before the script can be run. The script is also not compatible with the Windows command prompt. This change enables cross-platform builds using a standard tool and lays the groundwork for publishing the project artifacts to shared repositories such as maven central.
The change does the following:
Adds a pom.xml which is configured to generate the binary jar, source jar and javadoc jar during the package phase. The package coordinates are nl.cwts:networkanalysis
Move code from the "cwts" root package to "nl.cwts" to keep consistent with standard Java naming practices (for an example in the network analysis space, see SNAP's news-search repo)
Add the Maven wrapper so that users are not required to have Maven installed to build. Assuming that a JDK1.8+ environment is present, you can just run ./mvnw package to build on Mac or Linux and mvnw.cmd package on Windows.
Remove the generated javadoc from the repo since it is derived from the source code during the build process. Update the README.md to contain instructions for browsing local documentation
Feedback requested on the following points:
The version is 1.0.0-SNAPSHOT (pre-release versioning with respect to publishing to an artifact repository)
I have not updated the portion of README.md that refers to RunNetworkClustering.jar, despite the jar now being named networkanalysis-1.0.0-SNAPSHOT.jar - that could be updated when a new GitHub release is made
I have made a best effort to add the correct authorship information to pom.xml
Thank you for sharing this package - we have found it very useful!
Replace shell script with Maven build system and move source code to comply with Maven standard build layout.
We have encountered some friction in building the package using the shell script because some manual steps must be taken to create output directories before the script can be run. The script is also not compatible with the Windows command prompt. This change enables cross-platform builds using a standard tool and lays the groundwork for publishing the project artifacts to shared repositories such as maven central.
The change does the following:
./mvnw package
to build on Mac or Linux andmvnw.cmd package
on Windows.Feedback requested on the following points:
Thank you for sharing this package - we have found it very useful!