Register for your free account! | Forgot your password?

Go Back   elitepvpers > Other Online Games > Minecraft
You last visited: Today at 12:24

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[Bukkit-Coding] Default Config

Discussion on [Bukkit-Coding] Default Config within the Minecraft forum part of the Other Online Games category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Apr 2014
Posts: 22
Received Thanks: 0
Question [Bukkit-Coding] Default Config

Hallo, ich habe ein Problem mit einem Code, der bei mir früher mal gieng.
Ich möchte die default config.yml aus der .jar in den Plugin Ordner kopieren. Hier der Code:

Code:
try {
	plugin.config_file.load(plugin.file_config);
} catch (IOException | InvalidConfigurationException e) {
	System.out.print(plugin.prefix + " Error while loading config");
}
if(!plugin.file_config.exists()){
	InputStream configYMLStream = plugin.getResource("config.yml");
	if (configYMLStream != null) {
		YamlConfiguration configYML = YamlConfiguration.loadConfiguration(configYMLStream);
		plugin.config_file.setDefaults(configYML);
	}
	try {
		plugin.config_file.save(plugin.file_config);
	} catch (IOException e) {
		System.out.print(plugin.prefix + " Error while saving config");
	}
}
Hat sich da etwas geändert und muss ich es anderst machen, oder übersehe ich irgendwas.

Vielen Dank schonmal im voraus für die hoffentlich hilfreichen Antworte.

Grüzle DieSamu.
DieSamu is offline  
Old 06/29/2014, 19:41   #2
Moderator


 
elite*gold: 558
Join Date: Feb 2010
Posts: 6,546
Received Thanks: 1,418
Was ist denn genau dein Problem? Gibt es einen Error?
ComputerBaer is offline  
Old 06/29/2014, 19:45   #3
 
elite*gold: 0
Join Date: Apr 2014
Posts: 22
Received Thanks: 0
Es gibt kein Error. Das Problem ist, dass die config.yml zwar erstellt wird, aber leer bleibt.
DieSamu is offline  
Old 06/29/2014, 20:07   #4


 
False's Avatar
 
elite*gold: 0
The Black Market: 243/0/0
Join Date: Apr 2011
Posts: 11,117
Received Thanks: 2,436
Mach es dir nicht so schwer und nutz einfach :
Code:
this.getConfig().addDefault("Test.default.level", 512); // fügt ein default wert(der aufjedenfall drin sein muss) ein.
this.getConfig().set("Test.1.lol","Test"); // speichert ein wert
this.getConfig().get("Test.1.lol"); // läd den wert aus
this.saveConfig(); //speichert die config
this.reloadConfig(); // läd die config neu
Ps. this ist die main class
False is offline  
Old 06/29/2014, 20:24   #5
 
elite*gold: 0
Join Date: Apr 2014
Posts: 22
Received Thanks: 0
1. dann kann ich nicht andere Config mit anderen Namen erstellen
2. damit kann ich keine Kommentare mit '#' in die Config einfügen
DieSamu is offline  
Old 06/29/2014, 20:35   #6


 
False's Avatar
 
elite*gold: 0
The Black Market: 243/0/0
Join Date: Apr 2011
Posts: 11,117
Received Thanks: 2,436
Quote:
Originally Posted by DieSamu View Post
1. dann kann ich nicht andere Config mit anderen Namen erstellen
2. damit kann ich keine Kommentare mit '#' in die Config einfügen
Okay du brauchst mehrere...
Dann wird denke ich es daran liegen das der wert nur eingesetzt wurde und nicht gespeichert wird.
Das selbe passiert wenn man auf "normalen" wege ein wert in die config schreibt aber nicht die save function aufruft.
Der wert ist für den Server dann zwar vorhanden wird aber in der Config nicht gespeichert. Schau nach einer Save function
False is offline  
Old 06/29/2014, 20:42   #7
 
elite*gold: 0
Join Date: Apr 2014
Posts: 22
Received Thanks: 0
An anderen Stellen des Plugins schreibe ich was in Config(s), speicher es mit der gleichen save Methode ab und es funktioniert.
DieSamu is offline  
Old 06/30/2014, 09:20   #8
Administrator
 
lordsill's Avatar
 
elite*gold: 26516
Join Date: May 2011
Posts: 21,003
Received Thanks: 2,346
Ich habs mal komplett anders gelöst, ohne auf bukkit selbst dafür zurückgreifen zu müssen, daher hier mal in etwa die schritte (programmieren wirst ja auch hinbekommen)

1. Hole die config via getResourceAsStream aus der jar datei (verwende am besten als Angabe des Ortes, wo es sich in der jar befindet mit einem / davor. Wenn es also direkt im root-verzeichnis der jar liegt: "/config.yml")
2. Durchlaufe mit hilfe von BufferedReader den kompletten InputStream den du aus 1. erhälst
3. Schreibe Zeile für Zeile in die config Datei im Plugins Ordner
4. Fertig

Geht alles ohne Bukkit-API nur mit reinem Java
lordsill is offline  
Thanks
1 User
Old 06/30/2014, 13:05   #9
 
elite*gold: 0
Join Date: Apr 2014
Posts: 22
Received Thanks: 0
Danke für den Ansatz, nur möchte ich die .yml Datei direkt aus der .jar holen. Ich möchte, dass das plugin nur mit dieser .jar funktioniert ohne sonsige Dateien auf den Root zu ziehen.
DieSamu is offline  
Old 06/30/2014, 13:42   #10
Administrator
 
lordsill's Avatar
 
elite*gold: 26516
Join Date: May 2011
Posts: 21,003
Received Thanks: 2,346
Da hast du mich glaub ich missverstanden.
Du musst die Datei nur in der jar haben. Das root-verzeichnis ist das hauptverzeichnis in der jar.

In der jar sieht es ja dann so aus:

de/meinname/meinplugin/meinplugin.class
plugin.yml
config.yml

und dort, wo du alles siehst, ist das root-verzeichnis
(dort siehst dann aber:
Ordner "de"
Datei "plugin.yml"
Datei "config.yml"
) (es wird einfach nur so genannt, damit ist nicht der server oder so gemeint)
lordsill is offline  
Thanks
1 User
Old 07/01/2014, 17:04   #11
 
elite*gold: 0
Join Date: Apr 2014
Posts: 22
Received Thanks: 0
Danke, fuktioniert so weit
DieSamu is offline  
Reply


Similar Threads Similar Threads
[Bukkit-Coding] Problem mit String list in Config
04/04/2014 - Minecraft - 3 Replies
Hallo, ich habe ein Problem mit meiner String list in einer config. Mit folgendem Code füg ich ein item der liste hinzu und setzte es in der Config, was auch funktioniert: List<String> player_list = plugin.data_file.getStringList("arena." + arena.toLowerCase() + ".player"); player_list.add(p.getName().toLowerCase()); plugin.data_file.set("arena." + arena.toLowerCase() + ".player", player_list);
[Bukkit] config auslesen und ersetzen
02/16/2013 - Minecraft - 6 Replies
cofig: #player hat das Spiel betreten. ingame: __Sandor__ hat das Spiel betreten. Also das er einen besimmten abschnitt mit einer variable ersetzt
[Bukkit] Spieler config
02/10/2013 - Minecraft - 15 Replies
Hii, ich möchte bei meinem Plugin, dass wenn ein Spieler das erste mal auf dem Server joint, dass für ihn eine cofig ensteht, z.B. Notch.yml. Diese Datei will ich aber noch später bearbeiten über Befehle und Listener. Ich glaube das ist bei Essentials so. Ich hoffe, mir kann jemand helfen. Liebe Grüße Samuel
Missing config file "default.cfg" during initiliazation. May need to add to code_pre_
11/30/2012 - Call of Duty - 0 Replies
hej Blackops2 error beim starten: Missing config file "default.cfg" during initiliazation. May need to add to code_pre_gfx.
Loaded default config d2nt 3.0
04/25/2010 - Diablo 2 - 1 Replies
ja topic sagt eigentlich shcon alles als ich bekomme immermal nachdem der bot ein script vollendet hat Loaded default config dieser schriftzug erscheint in blau hat aber keine auswirkungen auf den verlauf... woran kann das liegen? habe noch ein problem.mein hdin übergeht beim botten immer die shenk extension obwohl sie auf true steht...hat wer ne idee woran das liegt??



All times are GMT +1. The time now is 12:25.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.