Lss233
本帖最后由 Lss233 于 2023-1-23 00:38 编辑

Lss233's.Mirror();

0x00 写在前面


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

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

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




另外,收藏本帖可以获得后续更新提醒。

0x01 介绍



推荐地址:https://lss233.littleservice.cn/repositories/minecraft
源地址:https://crystal.app.lss233.com/repositories/minecraft/ (可以下载到最新版本的文件,可以使用文件浏览器功能)
备用地址1:https://maven.fastmirror.net/ (由物语云计算提供的 CDN 服务)
备用地址2:https://lss233.maven.bzgzs.cn/ ([第三方]@vvvbb** 提供的到源站的反向代理,支持 http 访问)

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


这个源镜像了以下内容:
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 = "https://files.minecraftforge.net/maven"
  4.         }
复制代码
替换成
  1. maven {
  2.             name = "forge"
  3.             url = "https://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
#147 中提到的方案。


4. 对于使用 Gradle 进行 Fabric Mod 开发的小伙伴

把settings.gradle里的   repositories { .... }  改成:
  1.         maven {
  2.             name = "Lss233's.Mirror();"
  3.             url = 'https://crystal.app.lss233.com/repositories/minecraft/'
  4.         }
复制代码
在 gradle.properties 中加入:
  1. loom_libraries_base = https://crystal.app.lss233.com/repositories/minecraft/
  2. loom_fabric_repository =https://crystal.app.lss233.com/repositories/minecraft/
  3. loom_resources_base = https://download.mcbbs.net/assets/
  4. loom_version_manifests = https://download.mcbbs.net/mc/game/version_manifest.json
复制代码




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

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




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

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




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



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

如果您有什么需要补充的仓库,或者想要提交自己的工件,也可以告诉我喔。




0x04 写在后面


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

友情推荐: LittleSkin.cn
本服务由物语云计算提供支持


linevil
提醒一下 搬瓦工在某些情况下甚至不如minecraftforge.net

Lss233
本帖最后由 Lss233 于 2018-6-23 18:20 编辑
linevil 发表于 2018-6-23 18:05
提醒一下 搬瓦工在某些情况下甚至不如minecraftforge.net

感谢您的提醒。
首先,我的bwh是中国优化线路;  其次,如果您真的使用过本仓库,你会知道镜像节点在国内。
如果你的网络无法正常连接到国内服务器,我也无能为力了。



linevil
Lss233 发表于 2018-6-23 18:10
感谢您的提醒。
首先,我的bwh是中国优化线路;  其次,如果您真的使用过本仓库,你会知道镜像节点在国内 ...

对不起 也许是我错了


Lss233
linevil 发表于 2018-6-23 18:23
对不起 也许是我错了

直接访问是bwh的服务器,
下载jar和xml文件的时候url会重定向到国内节点。

弱鸡绿毛怪
感谢楼主分享!!!
表示之前一直弄着玩意儿要搞半天。。还慢的一批

森林蝙蝠

楼主有兴趣将这些核心都部署到maven源去吗?

Lss233
森林蝙蝠 发表于 2018-6-23 20:54
楼主有兴趣将这些核心都部署到maven源去吗?

好的呀,镜像以下仓库:
liteloader 我不清楚是在哪个repo里,不过它涉及到的几个repo已经在里面了
canary的repo无法访问,所以放弃镜像。


感谢您的建议!

3222577979
辛苦了楼主
很好
我这边收藏了

lliiooll
辛苦了楼主,但是我这里访问时
504 Gateway Time-out

Lss233
lliiooll 发表于 2018-8-18 07:32
辛苦了楼主,但是我这里访问时
504 Gateway Time-out

抱歉,可能是我这里Nginx做的反代出了点问题。
现在应该可以正常访问了。

lliiooll
感谢,现在正常了

Lss233
* 2018年8月27日更新
增加了对libraries.minecraft.net的镜像。
这意味着你还可以从这个仓库下载一些常见的游戏启动依赖,比如用于启动器。(亲测1.11可用)

gooding300
如果您有把握长时间维护下去的话
或许您可以去申请下高亮和加入顶置索引贴
感谢您的付出

Lss233
gooding300 发表于 2018-8-27 13:26
如果您有把握长时间维护下去的话
或许您可以去申请下高亮和加入顶置索引贴
感谢您的付出

这个项目已经平稳运行两个月左右了,还没有遇到什么问题。
让它长期运行下去,我觉得也是没有问题的。我会努力下去的。
我已经在申请帖提交申请了。

谢谢

Lss233
本帖最后由 Lss233 于 2018-9-22 23:02 编辑

2018年9月22日更新
现在支持来自codemc提供的spigot和craftbukkit服务端作为依赖了
这些依赖可以让你的插件在不用Reflection的情况下
访问 OBC(org.bukkit.craftbukkit)和 NMS(net.minecraft.server)包下的内容
对于有时候想偷懒的情况来讲特别实用

你甚至还可以把它们下载下来直接作为服务端启动,不过由于是第三方提供的内容,因此可能存在安全隐患。

截止至目前,
Spigot支持的版本范围为: 1.8-1.13.1
Craftbukkit的版本范围: 1.7.2 - 1.13.1-R0.1-20180922.072020-7

例子:
1.12.2版本的spigot服务端核心

  1.         <dependency>
  2.             <groupId>org.spigotmc</groupId>
  3.             <artifactId>spigot</artifactId>
  4.             <version>1.12.2-R0.1-SNAPSHOT</version>
  5.         </dependency>
复制代码
直接下载: 戳我
1.13版本的craftbukkit服务端核心

  1.         <dependency>
  2.             <groupId>org.bukkit</groupId>
  3.             <artifactId>craftbukkit</artifactId>
  4.             <version>1.13-R0.1-SNAPSHOT</version>
  5.         </dependency>
复制代码
直接下载: 戳我

另外,如果您打算发布自己的lib,可以联系我喔····






Lss233
本帖最后由 Lss233 于 2019-2-4 14:55 编辑

现已支持 gradlew 对Gradle程序的镜像。
使用方法:
打开项目中的 gradle/wrapper/gradle-wrapper.properties 文件,
将 services.gradle.org/distributions 替换为 lss233.com/artifactory/gradle-dist 即可。

镜像程序默认不会下载所有的Gradle版本,而且由于Gradle程序本身较大,因此
如果您在使用本镜像的时候出现超时问题,可能是因为这个镜像还没有被人下载过。
您可以先喝杯茶耐心等待镜像程序处理完毕,
然后您只需要重新执行之前的命令即可。

祝大家新年快乐~

Lss233
时隔2年, Lss233's.Mirror();  在今天终于更新了!
本次更新重写了 Crystal 90%的后端代码,新版的 Crystal 将不再把上游文件存入内存后保存到本地(简直蠢到家了)。因此稳定性将会大幅度提升。
另外,文件浏览器功能终于被加入了!
现在,你可以在 https://crystal.app.lss233.com/repositories/minecraft 查看当前已经镜像的文件。

z0z0r40
该更新了,TSS镜像源已经重定向到mojang了,没意义
另外建议使用download.mcbbs.net,毕竟bmclapi还是没靠山,偶尔卡
与bmclaoi全等

第一页 上一页 下一页 最后一页