Opa,
Aqui está uma versão atualizada do método acima.
O código atualizado está abaixo, faça o que quiser; você pode colocar o método em um novo Thread, remover o Result e usar o direto o código, você que sabe.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import org.bukkit.plugin.Plugin;
public class Updater {
private Plugin plugin;
private Result result;
public Updater(Plugin plugin) {
this.plugin = plugin;
this.result = Result.NO_UPDATE;
}
public Result check() {
try {
HttpURLConnection c = (HttpURLConnection) new URL("https://api.spigotmc.org/legacy/update.php?resource=RESOURCE ID").openConnection();
c.setDoOutput(true);
c.setRequestMethod("GET");
c.getOutputStream().write(("key=98BE0FE67F88AB82B4C197FAF1DC3B69206EFDCC4D3B80FC83A00037510B99B4&resource=RESOURCE ID").getBytes("UTF-8"));
String oldVersion = plugin.getDescription().getVersion();
String newVersion = new BufferedReader(new InputStreamReader(c.getInputStream())).readLine().replaceAll("[a-zA-Z ]", "");
if (!newVersion.equals(oldVersion)) {
result = Result.NEW_UPDATE;
}else{
result = Result.NO_UPDATE;
}
}catch(IOException ex) {
ex.printStackTrace();
result = Result.ERROR;
}
return result;
}
private enum Result {
ERROR,
NO_UPDATE,
NEW_UPDATE;
}
}
O resource ID é o número gerado na URL do seu plugin, a key não é gerada por resource ou por conta, você pode tentar com a a key que estamos usando que deve funcionar.