Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dependency issues with latest Leiningen releases (>2.9.3) #20

Open
jessesaga opened this issue Jan 1, 2021 · 4 comments
Open

Dependency issues with latest Leiningen releases (>2.9.3) #20

jessesaga opened this issue Jan 1, 2021 · 4 comments

Comments

@jessesaga
Copy link

This plugin works with Leiningen versions up to 2.9.3. Versions 2.9.4 and 2.9.5 cause the following exception.

minifying assets...
Execution error (NoSuchFieldError) at com.google.javascript.jscomp.parsing.JsDocInfoParser/validTemplateTypeName (JsDocInfoParser.java:1208).
JAVA_UPPER_CASE

@yogthos
Copy link
Owner

yogthos commented Jan 1, 2021

It looks like an issue with the Google closure compiler dependency version. Would you be able to check your lein deps :tree output and see what version it prints for the working scenario, and also try adding it explicitly with newer lein versions to see if that would address the problem.

@jessesaga
Copy link
Author

I think it's a conflict with the lein-nvd plugin.

An excerpt of the output of lein deps :plugin-tree (below) shows the following dependencies. If I remove lein-nvd as a plugin everything works with recent versions of Leiningen and lein-asset-minifier. (tested against 2.9.3, 2.9.4, and 2.9.5)

It's odd that newer versions of Leiningen fail with the combination of these plugins. I wonder if classpath handling for plugins changed post Leiningen 2.9.3.....

 [lein-nvd "1.4.0"]
   [com.cemerick/pomegranate "1.1.0"]
     [org.apache.maven.resolver/maven-resolver-connector-basic "1.0.3"]
     [org.apache.maven.resolver/maven-resolver-transport-file "1.0.3"]
     [org.apache.maven.resolver/maven-resolver-transport-http "1.0.3"]
       [org.slf4j/jcl-over-slf4j "1.6.2"]
     [org.apache.maven.resolver/maven-resolver-transport-wagon "1.0.3"]
     [org.apache.maven.wagon/wagon-http "3.0.0"]
       [org.apache.httpcomponents/httpcore "4.4.6"]
       [org.apache.maven.wagon/wagon-http-shared "3.0.0"]
     [org.apache.maven.wagon/wagon-provider-api "3.0.0"]
     [org.apache.maven/maven-resolver-provider "3.5.3"]
       [javax.inject "1"]
       [org.apache.commons/commons-lang3 "3.5"]
       [org.apache.maven.resolver/maven-resolver-api "1.1.1"]
       [org.apache.maven.resolver/maven-resolver-impl "1.1.1"]
       [org.apache.maven.resolver/maven-resolver-spi "1.1.1"]
       [org.apache.maven.resolver/maven-resolver-util "1.1.1"]
       [org.apache.maven/maven-model-builder "3.5.3"]
         [org.apache.maven/maven-artifact "3.5.3"]
         [org.apache.maven/maven-builder-support "3.5.3"]
         [org.codehaus.plexus/plexus-component-annotations "1.7.1" :exclusions [[junit]]]
         [org.codehaus.plexus/plexus-interpolation "1.24"]
       [org.apache.maven/maven-model "3.5.3"]
       [org.apache.maven/maven-repository-metadata "3.5.3"]
       [org.codehaus.plexus/plexus-utils "3.1.0"]
   [nvd-clojure "1.4.0"]
     [clansi "1.0.0"]
     [org.owasp/dependency-check-core "5.2.4"]
       [com.github.package-url/packageurl-java "1.1.1"]
       [com.google.code.gson/gson "2.8.5"]
       [com.google.guava/guava "28.1-jre"]
         [com.google.code.findbugs/jsr305 "3.0.2"]
         [com.google.errorprone/error_prone_annotations "2.3.2"]
         [com.google.guava/failureaccess "1.0.1"]
         [com.google.guava/listenablefuture "9999.0-empty-to-avoid-conflict-with-guava"]
         [com.google.j2objc/j2objc-annotations "1.3"]
         [org.checkerframework/checker-qual "2.8.1"]
         [org.codehaus.mojo/animal-sniffer-annotations "1.18"]
       [com.h2database/h2 "1.4.196" :scope "runtime"]
       [com.h3xstream.retirejs/retirejs-core "3.0.1"]
         [com.esotericsoftware/minlog "1.3"]
         [com.github.spullara.mustache.java/compiler "0.8.17"]
         [org.json/json "20140107"]
       [com.moandjiezana.toml/toml4j "0.7.2"]
       [com.sun.mail/mailapi "1.6.4"]
         [com.sun.activation/jakarta.activation "1.2.1"]
       [com.vdurmont/semver4j "3.1.0"]
       [commons-collections "3.2.2"]
       [org.apache.commons/commons-compress "1.19"]
       [org.apache.commons/commons-jcs-core "2.2.1"]
       [org.apache.commons/commons-text "1.8"]
       [org.apache.lucene/lucene-analyzers-common "8.3.0"]
       [org.apache.lucene/lucene-core "8.3.0"]
       [org.apache.lucene/lucene-queryparser "8.3.0"]
         [org.apache.lucene/lucene-queries "8.3.0" :exclusions [[org.apache.lucene/lucene-core]]]
         [org.apache.lucene/lucene-sandbox "8.3.0" :exclusions [[org.apache.lucene/lucene-core]]]
       [org.apache.velocity/velocity-engine-core "2.1"]
       [org.glassfish/javax.json "1.0.4"]
       [org.jsoup/jsoup "1.12.1"]
       [org.owasp/dependency-check-utils "5.2.4"]
       [org.sonatype.ossindex/ossindex-service-client "1.2.0" :exclusions [[org.apache.httpcomponents/httpclient] [org.apache.httpcomponents/httpcore]]]
         [joda-time "2.9.9"]
         [org.sonatype.ossindex/ossindex-service-api "1.2.0"]
           [javax.ws.rs/javax.ws.rs-api "2.0.1"]
           [org.sonatype.goodies/package-url-java "1.0.1"]
       [us.springett/cpe-parser "2.0.1"]
     [org.slf4j/slf4j-simple "1.7.29"]
       [org.slf4j/slf4j-api "1.7.29"]
     [rm-hull/table "0.7.1"]
     [trptcolin/versioneer "0.2.0"]
   [org.clojure/data.json "0.2.6"]

@yogthos
Copy link
Owner

yogthos commented Jan 3, 2021

Ah I see, it might be worth looking at updating closure compiler in asset-minifier to the same version as lein-nvd uses. I won't have time to look at that in the near future, but if you'd be up for taking a stab at it I'd be glad to help with the PR and push an update to Clojars.

@danielcompton
Copy link

Related: eriwen/gradle-js-plugin#170

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants