nddipiazza opened a new pull request, #2473: URL: https://github.com/apache/tika/pull/2473
## JIRA Ticket https://issues.apache.org/jira/browse/TIKA-4587 ## Summary Adds support for pf4j's development mode to TikaPluginManager, allowing plugin development without packaging as ZIP files. ## Changes - Added RuntimeMode configuration to TikaPluginManager - Configure via system property: `-Dtika.plugin.dev.mode=true` - Configure via environment variable: `TIKA_PLUGIN_DEV_MODE=true` - Skip ZIP extraction when in DEVELOPMENT mode - Added unit tests to verify mode configuration - Defaults to DEPLOYMENT mode for backward compatibility ## Testing - All existing tests pass - Added new tests: TikaPluginManagerTest - testDefaultRuntimeModeIsDeployment - testDevelopmentModeViaSystemProperty - testDeploymentModeWhenPropertyIsFalse - Integration tests pass (PluginManagerTest) ## Benefits - Faster plugin development cycle - developers can point plugin-roots directly at `target/classes` - Easier debugging - no need to rebuild ZIPs after each code change - Aligns with pf4j best practices: https://pf4j.org/doc/development-mode.html ## Review Focus Areas - **Configuration handling**: System property and environment variable precedence - **Backward compatibility**: Defaults to DEPLOYMENT mode when not configured - **Test coverage**: Unit tests verify both modes work correctly ## Files Modified - `tika-plugins-core/src/main/java/org/apache/tika/plugins/TikaPluginManager.java` - `tika-plugins-core/src/test/java/org/apache/tika/plugins/TikaPluginManagerTest.java` (new) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
