Skip to content

Conversation

@odisseus
Copy link
Contributor

@odisseus odisseus commented Feb 28, 2023

How to:

  • Build all sources
bazel build //...
  • Run all tests
bazel test //...
  • Run the demo
bazel run //src/main/java/io/ipfs/api/demo:demo

TODO:

  • Create a target for building the distribution JAR
  • Clean up the remains of the Ant and Maven build definitions

Questions:

  • How to set up artifact publishing?
  • Is it possible to import java-multiaddr etc. as source repositories instead of importing the published JARs?

@odisseus odisseus force-pushed the bazel-build branch 2 times, most recently from 4ceae67 to 9e4bcc1 Compare February 28, 2023 13:29
@odisseus odisseus mentioned this pull request Mar 3, 2023
@odisseus odisseus force-pushed the bazel-build branch 3 times, most recently from 2eee719 to a9c06da Compare March 8, 2024 10:28
@cstamas
Copy link
Collaborator

cstamas commented Jan 18, 2026

Aside of Ant and Maven adding Bazel too? What is the intent here?

@odisseus
Copy link
Contributor Author

odisseus commented Jan 19, 2026

Bazel is better suited for a project that releases multiple artifacts which depend on each other (such as multibase ← multihash ← multiaddr ← http-client). This particular example shows that the sources for these inter-dependent artifacts don't even have to live in the same repository (although it is definitely easier to work with them if they do).

Bazel has its own disadvantages: the build definitions are more complicated than e.g. Maven, and the IDE support is not as good. However, the Bazel ecosystem has seen a lot of changes in the past two years, and this concept might be worth revisiting.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants