Skip to content

Remove JBangRunner.stripClasspathEntries() workaround when jbangdev/jbang#1749 is fixed #1877

@velo

Description

@velo

Context

JBang does not support provided scope for dependencies (jbangdev/jbang#1749). This means --class-path entries passed to jbang export fatjar get bundled into the output JAR, causing a 592MB fat JAR with classloader conflicts (see #1876).

Current Workaround

JBangRunner.stripClasspathEntries() post-processes the fat JAR after export, removing all entries that came from the --class-path JARs while keeping UDF classes, META-INF/, and //DEPS dependencies.

Action

When jbangdev/jbang#1749 is resolved and JBang supports provided scope:

  1. Update JBangRunner.exportFatJar() to use the provided scope mechanism instead of --class-path
  2. Remove stripClasspathEntries() and collectJarEntryNames()
  3. Remove the related unit tests in JBangRunnerTest

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions