Gradle build-script improvements#66
Merged
wcmatthysen merged 9 commits intoWorldWindEarth:developfrom Aug 5, 2019
wcmatthysen:gradle-improvements
Merged
Gradle build-script improvements#66wcmatthysen merged 9 commits intoWorldWindEarth:developfrom wcmatthysen:gradle-improvements
wcmatthysen merged 9 commits intoWorldWindEarth:developfrom
wcmatthysen:gradle-improvements
Conversation
The JOGL, Gluegen and Jackson dependencies should be declared as "compile" dependencies, whereas the gdal dependency should be an implementation dependency. The reason for this is that clients that depend on WorldWind should receive JOGL, Gluegen and Jackson as transitive dependencies. On the other hand, they should not receive GDAL as a transitive dependency due to the fact that GDAL can be included as a system dependency.
Member
Author
|
@gbburkhardt, @Sufaev, I made a couple of fixes to the Note: to build against the system GDAL you can pass the following parameter when building: I'll have to have a look at whether we can use this parameter during runtime with NetBeans to force it to use the system-based GDAL as dependency when launching one of the main classes. |
Added two new Gradle tasks called processMilStd2525SVGs and milStd2525Zip respectively. The processMilStd2525SVGs is a replacement for the compileMilStd2525 ant-task that is present in the build.xml file and is basically responsible for processing the MilStd2525 SVG files to produce the corresponding PNG files. The milStd2525Zip task depends on the output of the processMilStd2525SVGs to produce a final zip file containing the PNGs.
Modified some ${}-clauses by removing the curly braces as this is not
needed in this file. The doLast lambdas of jar and extensionsJar was
moved to be inside their respective tasks. This organizes the tasks a
bit better in that the tasks contain everything pertaining to their
execution inside their bodies.
Added a new Gradle task called runLayerManager. This task mirrors the runLayerManager task in the ant build.xml file.
To run the ant runLayerManager task we do not need to setup a GDAL environment as the runLayerManager task does not use any GDAL functionality. Thus, a small cleanup was done to this task by removing the GDAL jars from the classpath as well as removing the GDAL specific environment variables.
Modified the build.gradle file by adding an entry in the ant-block to load either the Windows or Linux GDAL properties file based on whether we are running in Windows or not. The dependencies clause was also modified by adding a check to see if the "systemGDAL" property was specified as a property on the command-line during a build. If this was the case then the GDAL jar on the system will be used during the build, else the default published one will be used from the maven-central or jcenter repositories.
We can't run the "sh -e /etc/init.d/xvfb start" command anymore. Instead we now need to specify that we need the xvfb service.
Travis switched to Xenial which means that oraclejdk8 is no longer available as an option in the jdk-list. So, to keep up with the latest changes we need to drop Oracle JDK 8 from our builds.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description of the Change
Additional changes and fixes to the
build.gradlefile. In particular we can now build the MilStd2525 symbology zip file as well as launch the layer-manager example via therunLayerManagertask. The dependency declarations have been fixed by swapping the "compile" clauses with "implementation" and vice versa (this was incorrectly declared initially). We also now have the ability to build against the system GDAL jar if required.Why Should This Be In Core?
The
build.gradlefile is now more complete and covers most of the functionality of the ant build script. We just lack the webstart clauses.Benefits
More complete gradle build script.
Potential Drawbacks
None
Applicable Issues
None