Comments (8)
In addition to runtime there is a case for provided dependencies too.
E.g. org.clojure:spec.alpha
and org.clojure:clojure
Though it seems in this case it might just be a specific subset of versions that have the cycle.
from rules_jvm_external.
Is there any workaround for this?
from rules_jvm_external.
Is there any workaround for this?
Sometimes you can workaround using exclusions, like in grpc/grpc-java#10576.
from rules_jvm_external.
To avoid having to wade through that rather long issue the relevant bit is:
maven_install(
artifacts = [
"io.grpc:grpc-okhttp:1.58.0",
maven.artifact(
artifact = "grpc-core",
exclusions = [
"io.grpc:grpc-util",
],
group = "io.grpc",
version = "1.58.0",
),
],
repositories = [
"https://repo.maven.apache.org/maven2/",
],
)
from rules_jvm_external.
It looks like support for deps/runtime_deps/provided_deps is non-trivial.
- lock file JSON will need to differentiate the dep's scope (likely requiring a v3 lock file format) and have
compile_dependencies
,runtime_dependencies
, andprovided_dependencies
keys or similar. Note that V2'sdependencies
is the union of the three new keys' values. - pinning will need to generate the new lock file with the new keys
- consuming the lock file and ultimately generating the
java_library
rules needs to use new lock file and new keys.
from rules_jvm_external.
Looks like there's also a dependency on coursier's behaviour: coursier/coursier#1231
Rather, the json report from coursier is used: it does not differentiate dependencies' scopes.
from rules_jvm_external.
I am facing similar issue while trying to update the version of google-cloud-storage
package.
![Screenshot 2023-12-20 at 1 12 22 PM](https://private-user-images.githubusercontent.com/9125374/291815919-d8e6f3e7-5b34-4bc7-bf4b-cc34eb02c924.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MDk1MTcxMTUsIm5iZiI6MTcwOTUxNjgxNSwicGF0aCI6Ii85MTI1Mzc0LzI5MTgxNTkxOS1kOGU2ZjNlNy01YjM0LTRiYzctYmY0Yi1jYzM0ZWIwMmM5MjQucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDMwNCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDAzMDRUMDE0NjU1WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZTZlMDg4MTQ2MWIyODUyOTgxNTBmZGJmOWVhNjdmMzY4YzIxNjQxNTVmMTBlYTFiMGE0ZDQzNGFkODA1MDRmZSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.yuTTQF9mBqQ4EfBb91wIYkqyJjSMdqnY8srDDkd4-wU)
I have tried the following suggestion as well, still it is failing.
maven.artifact(
artifact = "google-cloud-storage",
exclusions = [
"io.grpc:grpc-context",
],
group = "com.google.cloud",
version = "2.30.1",
),
from rules_jvm_external.
If you're using 5.3, that's because this commit is not included. I've filed a request to release a new version: #1014
from rules_jvm_external.
Related Issues (20)
- ERROR: no such target '//src/test:greeter_test_app': target 'greeter_test_app' not declared in package 'src/test' HOT 2
- generate_compat_repositories in maven module extension doesn't generate target names that provide "compat"-ibility with older repositories HOT 1
- `bazel run scripts:format` is broken
- Lock file differs between `bzlmod` and workspace-based runs HOT 2
- Align new attributes between workspace and bzlmod builds
- Release `rules_jvm_external` 6.0 HOT 10
- Provide support for resolving Maven BOMs
- Can't install maven dependencies with a top-level "build" directory on case-insensitive filesystems HOT 5
- [bzlmod] kt_jvm_export cannot resolve @io_bazel_rules_kotlin_configured
- With `bzlmod` if the root module and a dependency both specify a lock file, use the root module's HOT 3
- Use Bazel's JVM to run Coursier HOT 3
- Pinning fails with error on 6.0 HOT 5
- The `docs` target from `java_export` fails with Protobuf dependencies HOT 7
- MySQL java dependency name is mangled by prepending "com_" HOT 1
- Exclusion syntax for MODULE.bazel files? HOT 1
- `use_repo_rule` usage breaks Bazel 5/6 support HOT 1
- Bazel fails to differentiate 'BUILD' file from directory named 'build' HOT 1
- Failed to resolve deps for com.google.firebase:firebase-analytics:aar:21.5.0 HOT 4
- Exporting and consuming artifacts from external repositories with bzlmod
- Transitive dep on egit is broken HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rules_jvm_external.