MCLink
MCLink makes it easy to create subscriber only Minecraft servers.
This plugin augments the build-in Whitelist to automate access control for subscriber servers.
Features
- Users on the op- and whitelist are automatically granted access.
- Supports variable tiers of subscription. (Example: Only allow 5$+ Patreons and non-Prime Twitch subs to join)
- Support for multiple subscription services all at once. (Current list: Twitch, GameWisp, Patreon)
- No synchronization delay. You can instantly join after subscribing. (Provided your accounts are linked.)
- You only have to link your accounts once. The link is specific to your Minecraft account, not the server you are trying to log in to.
- Close the server to everyone except people on the op- or whitelist. This allows you to prepare a server for launch easily.
- Mods/Plugins for other platforms (Forge/Sponge/Vanilla) are available or being worked on too! (check website for a list)
- The command /mclink allows you to reload the config, request server status and open and close the server on demand.
How to use
For players
- Link your Minecraft account and the account you want to use to authenticate via the MClink service.
See the instructions on the website: https://mclink.dries007.net/help. - Log into any server that is protected by MCLink.
- Play!
Server owners
- Link your accounts. (Same as players.)
- Get an API token. (Instructions on website.)
- Install the plugin.
- Put the API token in mod's config. Config example here.
- Invite players & play!
More information is also available on the website: https://mclink.dries007.net.
This project is useless without the MCLink service provided via the website, hence why the description refers to it.
For support: Please join discord (feel free to ping me) or email me. Curse DMs are awful.
Would this work on a forge server ?
In reply to TheCynicalKitty:
You can download Forge versions on the website. They are however not as up to date. What version would you need?
Any chance that the plugin gives subscribers a specific sub role with certain perks, while non subs get a basic, limited role instead of whitelisting.
I would like to give my subs a role that allows them full access to the server while non-subs are put in adventure mode where they can preview the server.
In reply to sutoriku:
Not at the moment. This is on the list for new features, when I have time to implement them.
Is there a way to make this plugin give a rank rather than whitelist, I'd like ranks for my Subs, and ranks for my Cheerers. Would this be able to do that? Using a 1.16.3 spigot btw!
In reply to ARandomThingTV:
Not with the current version of the plugin. I'm slowly working on a version that can do it by running commands when people join, but it's gonna be a while still before that is finished.
I recommend you join the discord (https://discord.gg/vTWbUYz) to stay up to date.
Doesn't appear to work with Spigot 1.13.2 either:
[10:41:46] [Server thread/INFO]: [MCLink] Enabling MCLink v0.3.0.14[10:41:46] [Server thread/INFO]: [MCLink] Enabling MCLink v0.3.0.14[10:41:46] [Server thread/ERROR]: Error occurred while enabling MCLink v0.3.0.14 (Is it up to date?)java.lang.RuntimeException: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at com.google.common.base.Throwables.propagate(Throwables.java:240) ~[spigot-1.13.2.jar:git-Spigot-eb21557-4a47be6] at net.dries007.mclink.MCLink.onEnable(MCLink.java:101) ~[?:?] at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:264) ~[spigot-1.13.2.jar:git-Spigot-eb21557-4a47be6] at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:339) [spigot-1.13.2.jar:git-Spigot-eb21557-4a47be6] at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:403) [spigot-1.13.2.jar:git-Spigot-eb21557-4a47be6] at org.bukkit.craftbukkit.v1_13_R2.CraftServer.enablePlugin(CraftServer.java:431) [spigot-1.13.2.jar:git-Spigot-eb21557-4a47be6] at org.bukkit.craftbukkit.v1_13_R2.CraftServer.enablePlugins(CraftServer.java:345) [spigot-1.13.2.jar:git-Spigot-eb21557-4a47be6] at net.minecraft.server.v1_13_R2.DedicatedServer.init(DedicatedServer.java:214) [spigot-1.13.2.jar:git-Spigot-eb21557-4a47be6] at net.minecraft.server.v1_13_R2.MinecraftServer.run(MinecraftServer.java:702) [spigot-1.13.2.jar:git-Spigot-eb21557-4a47be6] at java.lang.Thread.run(Unknown Source) [?:1.8.0_60]Caused by: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_60] at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.8.0_60] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.8.0_60] at java.lang.reflect.Constructor.newInstance(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.http.HttpURLConnection$10.run(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.http.HttpURLConnection$10.run(Unknown Source) ~[?:1.8.0_60] at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_60] at sun.net.www.protocol.http.HttpURLConnection.getChainedException(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown Source) ~[?:1.8.0_60] at net.dries007.mclink.api.API.parseConnectionOutput(API.java:289) ~[?:?] at net.dries007.mclink.api.API.doGetRequest(API.java:280) ~[?:?] at net.dries007.mclink.api.API.doGetRequest(API.java:256) ~[?:?] at net.dries007.mclink.api.API.getServices(API.java:110) ~[?:?] at net.dries007.mclink.common.CommonConfig.reload(CommonConfig.java:140) ~[?:?] at net.dries007.mclink.BukkitConfig.reload(BukkitConfig.java:132) ~[?:?] at net.dries007.mclink.common.MCLinkCommon.init(MCLinkCommon.java:65) ~[?:?] at net.dries007.mclink.MCLink.onEnable(MCLink.java:97) ~[?:?] ... 8 moreCaused by: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.security.ssl.Alerts.getSSLException(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.SSLSocketImpl.fatal(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.Handshaker.fatalSE(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.Handshaker.fatalSE(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.ClientHandshaker.serverCertificate(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.ClientHandshaker.processMessage(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.Handshaker.processLoop(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.Handshaker.process_record(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.http.HttpURLConnection.getHeaderField(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.https.HttpsURLConnectionImpl.getHeaderField(Unknown Source) ~[?:1.8.0_60] at net.dries007.mclink.api.API.doGetRequest(API.java:277) ~[?:?] at net.dries007.mclink.api.API.doGetRequest(API.java:256) ~[?:?] at net.dries007.mclink.api.API.getServices(API.java:110) ~[?:?] at net.dries007.mclink.common.CommonConfig.reload(CommonConfig.java:140) ~[?:?] at net.dries007.mclink.BukkitConfig.reload(BukkitConfig.java:132) ~[?:?] at net.dries007.mclink.common.MCLinkCommon.init(MCLinkCommon.java:65) ~[?:?] at net.dries007.mclink.MCLink.onEnable(MCLink.java:97) ~[?:?] ... 8 moreCaused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.security.validator.PKIXValidator.doBuild(Unknown Source) ~[?:1.8.0_60] at sun.security.validator.PKIXValidator.engineValidate(Unknown Source) ~[?:1.8.0_60] at sun.security.validator.Validator.validate(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.X509TrustManagerImpl.validate(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.X509TrustManagerImpl.checkTrusted(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.ClientHandshaker.serverCertificate(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.ClientHandshaker.processMessage(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.Handshaker.processLoop(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.Handshaker.process_record(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.http.HttpURLConnection.getHeaderField(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.https.HttpsURLConnectionImpl.getHeaderField(Unknown Source) ~[?:1.8.0_60] at net.dries007.mclink.api.API.doGetRequest(API.java:277) ~[?:?] at net.dries007.mclink.api.API.doGetRequest(API.java:256) ~[?:?] at net.dries007.mclink.api.API.getServices(API.java:110) ~[?:?] at net.dries007.mclink.common.CommonConfig.reload(CommonConfig.java:140) ~[?:?] at net.dries007.mclink.BukkitConfig.reload(BukkitConfig.java:132) ~[?:?] at net.dries007.mclink.common.MCLinkCommon.init(MCLinkCommon.java:65) ~[?:?] at net.dries007.mclink.MCLink.onEnable(MCLink.java:97) ~[?:?] ... 8 moreCaused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.security.provider.certpath.SunCertPathBuilder.build(Unknown Source) ~[?:1.8.0_60] at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(Unknown Source) ~[?:1.8.0_60] at java.security.cert.CertPathBuilder.build(Unknown Source) ~[?:1.8.0_60] at sun.security.validator.PKIXValidator.doBuild(Unknown Source) ~[?:1.8.0_60] at sun.security.validator.PKIXValidator.engineValidate(Unknown Source) ~[?:1.8.0_60] at sun.security.validator.Validator.validate(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.X509TrustManagerImpl.validate(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.X509TrustManagerImpl.checkTrusted(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.ClientHandshaker.serverCertificate(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.ClientHandshaker.processMessage(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.Handshaker.processLoop(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.Handshaker.process_record(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[?:1.8.0_60] at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.http.HttpURLConnection.getHeaderField(Unknown Source) ~[?:1.8.0_60] at sun.net.www.protocol.https.HttpsURLConnectionImpl.getHeaderField(Unknown Source) ~[?:1.8.0_60] at net.dries007.mclink.api.API.doGetRequest(API.java:277) ~[?:?] at net.dries007.mclink.api.API.doGetRequest(API.java:256) ~[?:?] at net.dries007.mclink.api.API.getServices(API.java:110) ~[?:?] at net.dries007.mclink.common.CommonConfig.reload(CommonConfig.java:140) ~[?:?] at net.dries007.mclink.BukkitConfig.reload(BukkitConfig.java:132) ~[?:?] at net.dries007.mclink.common.MCLinkCommon.init(MCLinkCommon.java:65) ~[?:?] at net.dries007.mclink.MCLink.onEnable(MCLink.java:97) ~[?:?] ... 8 more
In reply to BaconGeek:
The "dead giveaway" is highlighted.
(Also: Please don't use Curse for support. Join discord or email me.)
Hello!
Thank you for this awesome mod! I can't wait to have it running correctly.
I have a huge problem. This is not the first mod I'm using and not the first config file I edited, but this is the first time where I have the following problem:
I edit the config, upload it and replace the old config (or delete the old one before), then I restart the server, and for some magical reason all of my edits are gone. So I cannot use MCLink because the config file always switches back to the default empty config. I'm trying out stuff for three hours now together with my mates, I'm so clueless... Do you have any idea?
Also here are some thoughts:
You can read several times that this mod is so super easy, but I tried letting some of my viewers register and they all stumbled when they had to go to https://mclink.dries007.net/. You know why? Because you tell them to link they're accounts on https://mclink.dries007.net/ - First of all you don't link them there (you link them after connecting to your MC server).
Next is, under https://mclink.dries007.net/ isn't even the instructions, the instructions are found under "help" in the menue on the website. Why don't you directly lead people to https://mclink.dries007.net/help then? Why you lead them to the front page where you just say that MCLink is easy to use when someone who followed the link just wants to get directly know how to go on fast? Even I had huge problems there because it looked like the link was wrong and so it just led me to the developer's front page. I also wouldn't haved guess to find it under "help" because "help" is most commonly for trouble shooting. Here we're just looking for the instructions for the first time.
Why not linking directly to the help page then? That would be, in my opinion, much easier. Maybe naming the help page just as the headline says would also make more sense ("instructions" or "how to link" or smt...).
I don't want to be mean or anything! I'm happy someone put effort into delivering something so cool. Just trying to share my experiences and maybe it helps.
Best regards,
Yen :)
It appears the current version doesn't work with 1.13.1. Here's the error I got:
[11:34:34] [Server thread/ERROR]: Error occurred while enabling MCLink v0.3.0.14 (Is it up to date?)
java.lang.RuntimeException: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at com.google.common.base.Throwables.propagate(Throwables.java:240) ~[spigot-1.13.1.jar:git-Spigot-6b015b4-a222e4a]
at net.dries007.mclink.MCLink.onEnable(MCLink.java:101) ~[?:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:264) ~[spigot-1.13.1.jar:git-Spigot-6b015b4-a222e4a]
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:339) [spigot-1.13.1.jar:git-Spigot-6b015b4-a222e4a]
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:403) [spigot-1.13.1.jar:git-Spigot-6b015b4-a222e4a]
at org.bukkit.craftbukkit.v1_13_R2.CraftServer.enablePlugin(CraftServer.java:428) [spigot-1.13.1.jar:git-Spigot-6b015b4-a222e4a]
at org.bukkit.craftbukkit.v1_13_R2.CraftServer.enablePlugins(CraftServer.java:342) [spigot-1.13.1.jar:git-Spigot-6b015b4-a222e4a]
at net.minecraft.server.v1_13_R2.DedicatedServer.init(DedicatedServer.java:214) [spigot-1.13.1.jar:git-Spigot-6b015b4-a222e4a]
at net.minecraft.server.v1_13_R2.MinecraftServer.run(MinecraftServer.java:702) [spigot-1.13.1.jar:git-Spigot-6b015b4-a222e4a]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_60]
Caused by: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_60]
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.8.0_60]
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.8.0_60]
at java.lang.reflect.Constructor.newInstance(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.http.HttpURLConnection$10.run(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.http.HttpURLConnection$10.run(Unknown Source) ~[?:1.8.0_60]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_60]
at sun.net.www.protocol.http.HttpURLConnection.getChainedException(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown Source) ~[?:1.8.0_60]
at net.dries007.mclink.api.API.parseConnectionOutput(API.java:289) ~[?:?]
at net.dries007.mclink.api.API.doGetRequest(API.java:280) ~[?:?]
at net.dries007.mclink.api.API.doGetRequest(API.java:256) ~[?:?]
at net.dries007.mclink.api.API.getServices(API.java:110) ~[?:?]
at net.dries007.mclink.common.CommonConfig.reload(CommonConfig.java:140) ~[?:?]
at net.dries007.mclink.BukkitConfig.reload(BukkitConfig.java:132) ~[?:?]
at net.dries007.mclink.common.MCLinkCommon.init(MCLinkCommon.java:65) ~[?:?]
at net.dries007.mclink.MCLink.onEnable(MCLink.java:97) ~[?:?]
... 8 more
Caused by: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at sun.security.ssl.Alerts.getSSLException(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.SSLSocketImpl.fatal(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.Handshaker.fatalSE(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.Handshaker.fatalSE(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.ClientHandshaker.serverCertificate(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.ClientHandshaker.processMessage(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.Handshaker.processLoop(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.Handshaker.process_record(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.http.HttpURLConnection.getHeaderField(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getHeaderField(Unknown Source) ~[?:1.8.0_60]
at net.dries007.mclink.api.API.doGetRequest(API.java:277) ~[?:?]
at net.dries007.mclink.api.API.doGetRequest(API.java:256) ~[?:?]
at net.dries007.mclink.api.API.getServices(API.java:110) ~[?:?]
at net.dries007.mclink.common.CommonConfig.reload(CommonConfig.java:140) ~[?:?]
at net.dries007.mclink.BukkitConfig.reload(BukkitConfig.java:132) ~[?:?]
at net.dries007.mclink.common.MCLinkCommon.init(MCLinkCommon.java:65) ~[?:?]
at net.dries007.mclink.MCLink.onEnable(MCLink.java:97) ~[?:?]
... 8 more
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at sun.security.validator.PKIXValidator.doBuild(Unknown Source) ~[?:1.8.0_60]
at sun.security.validator.PKIXValidator.engineValidate(Unknown Source) ~[?:1.8.0_60]
at sun.security.validator.Validator.validate(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.X509TrustManagerImpl.validate(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.X509TrustManagerImpl.checkTrusted(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.ClientHandshaker.serverCertificate(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.ClientHandshaker.processMessage(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.Handshaker.processLoop(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.Handshaker.process_record(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.http.HttpURLConnection.getHeaderField(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getHeaderField(Unknown Source) ~[?:1.8.0_60]
at net.dries007.mclink.api.API.doGetRequest(API.java:277) ~[?:?]
at net.dries007.mclink.api.API.doGetRequest(API.java:256) ~[?:?]
at net.dries007.mclink.api.API.getServices(API.java:110) ~[?:?]
at net.dries007.mclink.common.CommonConfig.reload(CommonConfig.java:140) ~[?:?]
at net.dries007.mclink.BukkitConfig.reload(BukkitConfig.java:132) ~[?:?]
at net.dries007.mclink.common.MCLinkCommon.init(MCLinkCommon.java:65) ~[?:?]
at net.dries007.mclink.MCLink.onEnable(MCLink.java:97) ~[?:?]
... 8 more
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at sun.security.provider.certpath.SunCertPathBuilder.build(Unknown Source) ~[?:1.8.0_60]
at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(Unknown Source) ~[?:1.8.0_60]
at java.security.cert.CertPathBuilder.build(Unknown Source) ~[?:1.8.0_60]
at sun.security.validator.PKIXValidator.doBuild(Unknown Source) ~[?:1.8.0_60]
at sun.security.validator.PKIXValidator.engineValidate(Unknown Source) ~[?:1.8.0_60]
at sun.security.validator.Validator.validate(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.X509TrustManagerImpl.validate(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.X509TrustManagerImpl.checkTrusted(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.ClientHandshaker.serverCertificate(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.ClientHandshaker.processMessage(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.Handshaker.processLoop(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.Handshaker.process_record(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[?:1.8.0_60]
at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.http.HttpURLConnection.getHeaderField(Unknown Source) ~[?:1.8.0_60]
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getHeaderField(Unknown Source) ~[?:1.8.0_60]
at net.dries007.mclink.api.API.doGetRequest(API.java:277) ~[?:?]
at net.dries007.mclink.api.API.doGetRequest(API.java:256) ~[?:?]
at net.dries007.mclink.api.API.getServices(API.java:110) ~[?:?]
at net.dries007.mclink.common.CommonConfig.reload(CommonConfig.java:140) ~[?:?]
at net.dries007.mclink.BukkitConfig.reload(BukkitConfig.java:132) ~[?:?]
at net.dries007.mclink.common.MCLinkCommon.init(MCLinkCommon.java:65) ~[?:?]
at net.dries007.mclink.MCLink.onEnable(MCLink.java:97) ~[?:?]
... 8 more
Is there going to be a 1.13 Version for this?
In reply to TriZanthium: