diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/forge/ForgeInstallTask.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/forge/ForgeInstallTask.java index dc33d88bb..d513779fb 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/forge/ForgeInstallTask.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/forge/ForgeInstallTask.java @@ -67,6 +67,7 @@ public final class ForgeInstallTask extends Task { installer = Files.createTempFile("forge-installer", ".jar"); dependent = new FileDownloadTask(NetworkUtils.toURL(remote.getUrl()), installer.toFile()) + .setCacheRepository(dependencyManager.getCacheRepository()) .setCaching(true); } diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/game/GameAssetDownloadTask.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/game/GameAssetDownloadTask.java index dd6b72d41..378141f0b 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/game/GameAssetDownloadTask.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/game/GameAssetDownloadTask.java @@ -89,7 +89,6 @@ public final class GameAssetDownloadTask extends Task { String url = dependencyManager.getDownloadProvider().getAssetBaseURL() + assetObject.getLocation(); FileDownloadTask task = new FileDownloadTask(NetworkUtils.toURL(url), file, new FileDownloadTask.IntegrityCheck("SHA-1", assetObject.getHash())); task.setName(assetObject.getHash()); - task.setCaching(true); dependencies.add(task .setCacheRepository(dependencyManager.getCacheRepository()) .setCaching(true) diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/game/LibraryDownloadTask.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/game/LibraryDownloadTask.java index 673ee4ec9..93bc2752c 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/game/LibraryDownloadTask.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/game/LibraryDownloadTask.java @@ -128,12 +128,16 @@ public class LibraryDownloadTask extends Task { try { URL packXz = NetworkUtils.toURL(url + ".pack.xz"); if (NetworkUtils.urlExists(packXz)) { - task = new FileDownloadTask(packXz, xzFile, null).setCaching(true); + task = new FileDownloadTask(packXz, xzFile, null) + .setCacheRepository(cacheRepository) + .setCaching(true); xz = true; } else { task = new FileDownloadTask(NetworkUtils.toURL(url), jar, - library.getDownload().getSha1() != null ? new IntegrityCheck("SHA-1", library.getDownload().getSha1()) : null).setCaching(true); + library.getDownload().getSha1() != null ? new IntegrityCheck("SHA-1", library.getDownload().getSha1()) : null) + .setCacheRepository(cacheRepository) + .setCaching(true); xz = false; } } catch (IOException e) { diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/CurseCompletionTask.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/CurseCompletionTask.java index d6bf9d3aa..0f4adaf26 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/CurseCompletionTask.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/CurseCompletionTask.java @@ -45,6 +45,7 @@ import java.util.stream.Collectors; */ public final class CurseCompletionTask extends Task { + private final DefaultDependencyManager dependency; private final DefaultGameRepository repository; private final ModManager modManager; private final String version; @@ -70,6 +71,7 @@ public final class CurseCompletionTask extends Task { * @param manifest the CurseForgeModpack manifest. */ public CurseCompletionTask(DefaultDependencyManager dependencyManager, String version, CurseManifest manifest) { + this.dependency = dependencyManager; this.repository = dependencyManager.getGameRepository(); this.modManager = repository.getModManager(version); this.version = version; @@ -140,7 +142,9 @@ public final class CurseCompletionTask extends Task { for (CurseManifestFile file : newManifest.getFiles()) if (StringUtils.isNotBlank(file.getFileName())) { if (!modManager.hasSimpleMod(file.getFileName())) { - dependencies.add(new FileDownloadTask(file.getUrl(), modManager.getSimpleModPath(file.getFileName()).toFile()).setCaching(true)); + dependencies.add(new FileDownloadTask(file.getUrl(), modManager.getSimpleModPath(file.getFileName()).toFile()) + .setCacheRepository(dependency.getCacheRepository()) + .setCaching(true)); } }