You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (Jira)" <ji...@apache.org> on 2025/12/24 10:46:00 UTC
[jira] [Updated] (CAMEL-22544) camel-jbang - Enhance dependency update to Sync Dependencies from Route Definitions
[ https://issues.apache.org/jira/browse/CAMEL-22544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen updated CAMEL-22544:
--------------------------------
Fix Version/s: 4.x
> camel-jbang - Enhance dependency update to Sync Dependencies from Route Definitions
> -----------------------------------------------------------------------------------
>
> Key: CAMEL-22544
> URL: https://issues.apache.org/jira/browse/CAMEL-22544
> Project: Camel
> Issue Type: Improvement
> Components: camel-jbang
> Reporter: Federico Mariani
> Priority: Major
> Fix For: 4.x
>
>
> Enable camel dependency update to process multiple Java files and automatically extract Camel component dependencies from route files to populate _//DEPS_ sections for better IDE autocomplete support.
> Developers using JBang with custom processors need Camel component dependencies in _//DEPS_ comments for IDE autocomplete. Currently, camel dependency update only handles single files and requires manual dependency management.
> Proposed Solution
> * Support multiple target files:
> {code:java}
> camel dependency update Processor1.java Processor2.java Processor3.java
> {code}
> * Add --scan-routes flag to extract dependencies from route files:
> {code:java}
> camel dependency update MyProcessor.java --scan-routes route1.camel.yaml route2.camel.xml route3.java
> {code}
> Behavior:
> * Scans specified route files (XML, YAML, Java)
> * Extracts Camel component dependencies and adds to target Java files as //DEPS
> * Example: SQL component in route → adds _//DEPS org.apache.camel:camel-sql_
> Dependency Management:
> * Preserve custom (non-Camel) dependencies
> * Only manage _org.apache.camel:*_ dependencies
> * Remove unused Camel dependencies from scanned routes
> * Don't interfere with application.properties handling
> * Idempotent operation (no duplicates on re-run)
> Examples
> * Single processor, multiple routes
> {code:java}
> camel dependency update MyProcessor.java --scan-routes route1.camel.yaml route2.camel.xml
> {code}
> * Multiple processors, shared routes
> {code:java}
> camel dependency update Proc1.java Proc2.java --scan-routes shared-routes.camel.yaml
> {code}
> * Mixed formats
> {code:java}
> camel dependency update DataProcessor.java --scan-routes api.xml data.yaml batch.java
> {code}
> DoD
> * Accepts multiple Java files as arguments
> * --scan-routes flag accepts multiple route files (XML/YAML/Java)
> * Correctly extracts and adds Camel dependencies to //DEPS
> * Preserves non-Camel dependencies
> * Removes only unused org.apache.camel:* dependencies
> * Documentation updated
--
This message was sent by Atlassian Jira
(v8.20.10#820010)