Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,11 @@ jobs:

steps:
- uses: actions/checkout@v6
- name: Set up JDK 11
- name: Set up JDK 21
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: 11
java-version: 21
cache: 'maven'
- name: Install and run IPFS
run: ./install-run-ipfs.sh
Expand Down
13 changes: 10 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,11 +47,15 @@ for Maven, add the following sections to your pom.xml (replacing $LATEST_VERSION

### Building

Build time requirements:
* Java 21
* Maven 3.9.6+ (latest patch release is recommended)

* Clone this repository
* Run `mvn install`
* Run `./mvnw install`
* Copy `target/ipfs-$VERSION.jar` into your project. Appropriate versions of other [dependencies](#dependencies) are also included in `dist/lib/`.
* To copy the project and all dependency JARs to directory, execute `mvn eu.maveniverse.maven.plugins:toolbox:gav-copy -DsourceSpec="resolveTransitive(gav(com.github.ipfs:java-ipfs-http-client:v1.4.5-SNAPSHOT))" -DsinkSpec="flat(.)"` in that given directory.
* Run tests using `mvn test` (invocation above will run them as well).
* To copy the project and all dependency JARs to directory, execute `./mvnw eu.maveniverse.maven.plugins:toolbox:gav-copy -DsourceSpec="resolveTransitive(gav(com.github.ipfs:java-ipfs-http-client:v1.4.5-SNAPSHOT))" -DsinkSpec="flat(.)"` in that given directory.
* Run tests using `./mvnw test` (invocation above will run them as well).

### Running tests

Expand Down Expand Up @@ -101,6 +105,9 @@ More example usage found [here](./src/main/java/io/ipfs/api/demo)

## Dependencies

Run time requirements:
* Java 11+

Current versions of dependencies are listed in the `pom.xml`, their corresponding source repositories are:

* [multibase](https://github.com/multiformats/java-multibase)
Expand Down
24 changes: 24 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,30 @@

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>3.6.2</version>
<configuration>
<rules>
<requireMavenVersion>
<version>3.9.6</version>
</requireMavenVersion>
<requireJavaVersion>
<version>21</version>
</requireJavaVersion>
</rules>
</configuration>
<executions>
<execution>
<id>enforce</id>
<goals>
<goal>enforce</goal>
</goals>
<phase>validate</phase>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
Expand Down