Commit 23b34ab
Migrate build to Maven, modernise Java APIs, upgrade to JUnit 5
Comprehensive Java 25 migration and tech-debt reduction across the full
project. All changes verified via `mvn compile` and `mvn test-compile`
with zero errors.
- Add pom.xml: Maven 3 build replacing Ant; Java 25 compiler release;
maven-surefire-plugin 3.5.2, exec-maven-plugin 3.4.1,
build-helper-maven-plugin 3.6.0, maven-jar-plugin 3.4.2
- Add rasterize-milstd2525 Maven profile (antrun + batik-all:1.17)
replacing the bundled Batik 1.7 JARs
- Update run-demo.bash / run-demo.bat to launch via `mvn exec:exec`
- Add .github/workflows/ci.yml: Temurin 25, `mvn compile` + `xvfb-run
mvn test`, Surefire report upload on failure
- Add .github/workflows/release.yml: tag-triggered; builds JAR +
Javadoc zip; publishes via softprops/action-gh-release@v2
- Archive .travis.yml → .travis.yml.archived
- Remove 8 bundled JOGL 2.4-rc / GlueGen JARs (total ~4.4 MB)
- JOGL 2.6.0 and GlueGen 2.6.0 now resolved via Maven Central;
required --add-opens flags declared in pom.xml surefire/exec config
- Replace OS-specific reflection branches (com.apple.eio.FileManager,
Runtime.exec) with java.awt.Desktop.browse()
- Replace removed sun.arch.data.model property with os.arch checks
(x86, i386, i686) for 32-bit architecture detection
- Remove 75 vendored Jackson 1.x source files under src/org/codehaus/
- Add com.fasterxml.jackson.core:jackson-core:2.18.2 Maven dependency
- Migrate 5 WWJ source files: org.codehaus.jackson.* →
com.fasterxml.jackson.core.*; factory.createJsonParser() →
factory.createParser(); parser.getCurrentName() → parser.currentName()
- Update LICENSE.jackson.txt to reference FasterXML 2.18.2
- Remove lib-external/batik/ (Batik 1.7+r608262 + Ant 1.6.5, ~7.7 MB)
- SVG→PNG rasterisation now runs via the new rasterize-milstd2525 Maven
profile at release time (no compile-time dependency)
- Replace junit:junit:4.13.2 with org.junit.jupiter:junit-jupiter:5.11.4
(aggregator: API + engine + params; Surefire 3.5.2 auto-discovers)
- Migrate all 49 test files:
· @RunWith(JUnit4.class) removed (47 files)
· @RunWith(Parameterized.class) → @ParameterizedTest @MethodSource
(KMLExportTest, ShapeAttributesTest — constructors removed, data()
returns Stream<List<Exportable>> / Stream<Arguments>)
· @Before/@after → @BeforeEach/@AfterEach (8 files)
· @ignore → @disabled (4 files)
· @test(expected=…) → assertThrows() (KMLExportTest)
· All org.junit.Assert/org.junit.* imports → org.junit.jupiter.api.*
· 1,688 assert argument-order fixes (JUnit 4 message-first →
JUnit 5 message-last) across 35 files
· Private assertEquals(Iterable<T>…) helpers renamed
assertIterablesEqual in 3 layer test files to prevent name-shadowing
- Add MIGRATION_JAVA25.md: complete migration guide + tech-debt register
(TD-01 through TD-11) with priority scores and completion status
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>1 parent 2543c23 commit 23b34ab
181 files changed
Lines changed: 2809 additions & 24575 deletions
File tree
- .github/workflows
- lib-external/batik
- lib
- nbproject
- src
- gov/nasa/worldwind
- formats
- geojson
- json
- util
- gdal
- org/codehaus/jackson
- annotate
- impl
- io
- sym
- type
- util
- test/gov/nasa/worldwind
- data
- formats
- georss
- shapefile
- geom
- globes
- layers
- ogc
- collada
- kml
- wcs
- render
- airspaces
- symbology/milstd2525
- util
- view
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
File renamed without changes.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
2 | | - | |
3 | | - | |
4 | | - | |
| 1 | + | |
| 2 | + | |
| 3 | + | |
5 | 4 | | |
6 | | - | |
| 5 | + | |
7 | 6 | | |
8 | | - | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
9 | 10 | | |
10 | | - | |
11 | | - | |
12 | | - | |
13 | | - | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
0 commit comments