diff --git a/README.md b/README.md
index e309d4d..056b590 100644
--- a/README.md
+++ b/README.md
@@ -33,7 +33,7 @@ build.gradle:
```groovy
plugins {
id 'com.github.johnrengelman.shadow' version '8.1.1'
- id 'io.github.revxrsal.zapper' version '0.0.1'
+ id 'io.github.revxrsal.zapper' version '1.0.0'
}
```
@@ -42,7 +42,7 @@ build.gradle.kts:
```groovy
plugins {
id("com.github.johnrengelman.shadow") version "8.1.1"
- id("io.github.revxrsal.zapper") version "0.0.1"
+ id("io.github.revxrsal.zapper") version "1.0.0"
}
```
@@ -118,7 +118,7 @@ To add the Zapper API:
io.github.revxrsal
zapper.api
- 0.0.1
+ 1.0.0
compile
```
diff --git a/api/src/main/java/revxrsal/zapper/DependencyManager.java b/api/src/main/java/revxrsal/zapper/DependencyManager.java
index 5aa7ca4..7185e23 100644
--- a/api/src/main/java/revxrsal/zapper/DependencyManager.java
+++ b/api/src/main/java/revxrsal/zapper/DependencyManager.java
@@ -33,7 +33,9 @@
import java.io.File;
import java.net.UnknownHostException;
import java.util.ArrayList;
+import java.util.LinkedHashSet;
import java.util.List;
+import java.util.Set;
import java.util.regex.Pattern;
public final class DependencyManager implements DependencyScope {
@@ -45,19 +47,17 @@ public final class DependencyManager implements DependencyScope {
private final URLClassLoaderWrapper loaderWrapper;
private final List dependencies = new ArrayList<>();
- private final List repositories = new ArrayList<>();
+ private final Set repositories = new LinkedHashSet<>();
private final List relocations = new ArrayList<>();
public DependencyManager(@NotNull File directory, @NotNull URLClassLoaderWrapper loaderWrapper) {
this.directory = directory;
this.loaderWrapper = loaderWrapper;
+ this.repositories.add(Repository.mavenCentral());
}
public void load() {
try {
- if (repositories.isEmpty()) {
- throw new IllegalArgumentException("No repositories were specified.");
- }
for (Dependency dep : dependencies) {
File file = new File(directory, String.format("%s.%s-%s.jar", dep.getGroupId(), dep.getArtifactId(), dep.getVersion()));
File relocated = new File(directory, String.format("%s.%s-%s-relocated.jar", dep.getGroupId(),
diff --git a/api/src/main/java/revxrsal/zapper/repository/MavenRepository.java b/api/src/main/java/revxrsal/zapper/repository/MavenRepository.java
index ef11831..aac7df4 100644
--- a/api/src/main/java/revxrsal/zapper/repository/MavenRepository.java
+++ b/api/src/main/java/revxrsal/zapper/repository/MavenRepository.java
@@ -27,6 +27,7 @@
import revxrsal.zapper.Dependency;
import java.net.URL;
+import java.util.Objects;
/**
* Represents a Maven repository with a URL
@@ -78,4 +79,16 @@ public String toString() {
public @NotNull URL resolve(@NotNull Dependency dependency) throws Exception {
return new URL(repoURL + dependency.getMavenPath());
}
+
+ @Override
+ public boolean equals(Object o) {
+ if (o == null || getClass() != o.getClass()) return false;
+ MavenRepository that = (MavenRepository) o;
+ return Objects.equals(repoURL, that.repoURL);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hashCode(repoURL);
+ }
}
diff --git a/build.gradle.kts b/build.gradle.kts
index 1e0bf47..895728a 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -16,7 +16,7 @@ plugins {
}
group = "io.github.revxrsal"
-version = "0.0.2"
+version = "1.0.0"
subprojects {
diff --git a/gradle-plugin/src/main/java/revxrsal/zapper/gradle/ZapperPlugin.kt b/gradle-plugin/src/main/java/revxrsal/zapper/gradle/ZapperPlugin.kt
index bf5dabf..e358a51 100644
--- a/gradle-plugin/src/main/java/revxrsal/zapper/gradle/ZapperPlugin.kt
+++ b/gradle-plugin/src/main/java/revxrsal/zapper/gradle/ZapperPlugin.kt
@@ -12,7 +12,7 @@ import java.io.File
/**
* The plugin version
*/
-private const val PLUGIN_VERSION: String = "0.0.2"
+private const val PLUGIN_VERSION: String = "1.0.0"
/**
* The Zapper Gradle plugin collects information about the zapped dependencies