本帖最后由 Lss233 于 2021-2-20 19:13 编辑

Lss233's.Mirror();

0x00 写在前面


记得最开始使用Maven的时候,基本上大部分时间都花在寻找依赖和下载依赖上。
许多API的作者也都是把自己的工件放在自己的maven仓库上,  
如果你使用Maven或者Gradle,那么你不仅要在pom.xml中写dependency,还要写一个repository。
有些仓库在国内访问还很慢、甚至无法打开,这大大降低了开发效率。

如果你现在正为此苦恼的话,那么试试我搭建的源吧!  (事实证明本镜像也可以帮助到国外开发者。)

提示:如果使用HTTPS访问,本镜像源需要的最低Java版本:  
  • Java 7 >= 7u111
  • Java 8 >= 8u101
更高的Java版本暂时没有收到不支持的反馈。其他程序的兼容性问题未知,如无法使用,望请告知,谢谢!
如果你还不知道如何使用Maven,可以参考这篇教程


0x01 介绍



推荐地址:http://lss233.littleservice.cn/repositories/minecraft
源地址:http://crystal.app.lss233.com/repositories/minecraft (使用文件浏览器功能)
备用地址1:https://lss233.com/artifactory/minecraft
备用地址2:http://nossl.lss233.com/artifactory/minecraft

统计信息(已匿名化处理)(不太好用):
https://crystal.app.lss233.com/stats/index.html


这个源镜像了以下内容:
  • spigot的snapshots (主要包含了spigot-api, bukkit-api)
  • spongepowered (主要包含了spongeapi, spongecommon 以及其他开发sponge插件可能用到的工件)
  • forge(镜像了files.minecraftforge.net/maven)
  • fabric(主要包含farbic)
  • herocraft-repo(主要包含了vault-api, heroes, Residence等工件)
  • placeholderapi-repo(主要包含了PlaceholderAPI)
  • sk89q-repo (主要包含了worldedit, worldguard, craftbook,dynmap-api 等工件 )
  • dmulloy2-snapshots(主要包含了ProtocolLib等工件)
  • ess3-repo (主要包含了Essentials插件的一些工件)
  • dakanilabs-repo (主要包含了SQLibrary, PlayerPoints等一些工件)
  • kk-central (主要包含了KCauldron等一些工件)
  • Phoenix(主要包含了PhoenixAPI)
  • destroystokyo-repo(主要包含paper-api, paperclip, waterfall等工件)
  • lex-snapshots(主要包含了NeptuneLib)
  • sonatype(主要包含了bungeecord-api等一大堆工件)
  • codemc(主要包含了craftbukkit、spigot服务端)
  • nukkit (主要包含了nukkit, nukkit-parent)
  • libraries.minecraft.net (可以用于加速Minecraft启动器/Forge调试环境的下载)
  • Gradle Distributions (可以用于加速Gradle Wrapper的下载,具体见下)

0x02 使用方法


虽然本镜像为Maven服务器,但使用的方式并没有限制。
下面介绍几种常见的使用情景.

1. 对于使用Maven进行开发的小伙伴

打开pom.xml ,在 <repositories> ... </repositories> 代码块中加入:
  1. <repository>
  2.   <id> lss233-minecraft </id>
  3.   <name> Lss233's Minecraft Repository </name>
  4.   <url>http://lss233.littleservice.cn/repositories/minecraft</url>
  5. </repository>
复制代码
然后就可以把其他已经在本仓库中的 <repository> ... </repository> 删除啦。  


2. Gradle Wrapper加速

通常首次使用 gradlew 的时候总会从Gradle官网缓慢地下载gradle.
本人对此也提供了一个简单的镜像。
加速方法:
打开项目中的 gradle/wrapper/gradle-wrapper.properties 文件,
services.gradle.org/distributions 替换为 lss233.littleservice.cn/repositories/gradle-dist 即可。




3. 对于使用Gradle进行Forge Mod开发的小伙伴  

把build.gradle里
  1. maven {
  2.             name = "forge"
  3.             url = "http://files.minecraftforge.net/maven"
  4.         }
复制代码
替换成
  1. maven {
  2.             name = "forge"
  3.             url = "http://lss233.littleservice.cn/repositories/minecraft"
  4.         }
复制代码
就可以提升下载速度啦,还能避免下载失败的问题呢。



3.1 高版本MDK  
如果使用高版本的MDK,可能还会遇到 jcenter 无法访问的现象。  
解决方法:
由于仓库中已经包含JCenter,您可以直接将build.gradle中的 jcenter() 删除。



3.2 完整版的build.gradle参考
1.12.2

1.7.10:

请点下面:


3.3 加速MCP、Assets等调试环境资源的下载
ForgeGradle对这些资源的下载地址是写死在代码中的。
然而,ForgeGradle没有打算对咱大陆开发者的网络情况提供帮助(见issue#558)。
但是,热心的开发者们也提出了自己的方案:
  • 对于 1.7.2 ~ 1.8.9,你可以考虑使用 szszss 提供的 FGOW
  • 对于 1.14+ 版本,你可以考虑使用 FledgeXu 提供的 ForgeGradleCN
  • 对于 1.7.10 版本,你还可以考虑使用我做的一个 模板项目
  • 或者在遵守ForgeGradle的开源协议情况下,修改ForgeGradle的相关代码并编译一份仅供自己使用的 Gradle 插件来解决这个问题。


FGOW参考配置(使用bmclapi下载游戏资源):
BMCLAPI2 - Lss233's.Mirror()
  1. // 自行调整位置
  2. repos {
  3.     mcJsonUrl = "http://bmclapi2.bangbang93.com/versions/{MC_VERSION}/{MC_VERSION}.json"
  4.     mcClientUrl = "http://bmclapi2.bangbang93.com/versions/{MC_VERSION}/{MC_VERSION}.jar";
  5.     mcServerUrl = "http://bmclapi2.bangbang93.com/versions/{MC_VERSION}/minecraft_server.{MC_VERSION}.jar";;
  6.     assestIndexUrl = "http://bmclapi2.bangbang93.com/indexes/{ASSET_INDEX}.json";
  7.     assestUrl = "http://bmclapi2.bangbang93.com/assets"
  8.     mcpUrl = "https://lss233.littleservice.cn/repositories/forgedev/fernflower-fix-1.0.zip"
  9. }
复制代码
除了 BMCLAPI 之外,你还可以使用其他的镜像服务。
例如:
TSS Mirror:https://www.mcbbs.net/thread-932755-1-1.html



4. 对于使用Gradle进行插件开发的小伙伴  

在build.gradle里的   repositories { .... }  里面加入一行:
  1. maven {
  2.             url 'http://lss233.littleservice.cn/repositories/minecraft/'
  3. }
复制代码





5. 对于啥都不用的小伙伴  

你可以用浏览器直接打开本源的网址,自行寻找你想要的依赖。暂时没空写功能已实现,点我直达




0x03 更新日志&更多使用介绍



2018年8月27日: 增加了对libraries.minecraft.net的镜像。详情: 13#
2018年9月22日: 加入了spigot和craftbukkit服务端核心。详情/使用方法: 22#
2019年2月04日: 增加了对Gradle程序的镜像。详情/使用方法: 29# 2020年7月28日: 重构,增加了文件浏览器。详情/使用方法:86#

如果您有什么需要补充的仓库,或者想要提交自己的工件,也可以告诉我喔。
另外,如果出现 504 Gateway Time-out 的情况,应该是不会影响你的构建程序自动下载文件的。
如果本仓库无法正常使用,请提醒我,我会尽快修复。

本人所在QQ群:495882048



0x04 写在后面


本人是没有稳定收入的学生,维护这个镜像服务需要不小的开销。如果这个东西对您有帮助、想支持我继续下去,可以了解一下我在爱发电的主页喔~

友情推荐: LittleSkin.cn