Java – die neusten Beiträge

Java Programmier Hilfe?

Hey, mir war neulich langweilig und da habe ich mir etwas für ein Spiel, welches ich öfters spiele ausgedacht um mir mein Leben ein Stück weit einfacher zu machen:
Es gibt in dem Spiel Charaktere mit Eigenschaften, (Damage, Cool down, Range).
Diese können mit "Traits" verändert werden: z.B. ein Trait mit einem "namen" verändert den Schaden um 10%.

Jetzt wollte ich mir ein Rechner bauen in dem ich sozusagen vorher sagen kann, wie genau sich meine Stats am ende verändern.

Ich hab nach ein Paar Versuchen einen kleinen Rechner gebaut, wobei ich leider immer eine neue Methode für ein jeweiliges Trait gebaut habe.

Jetzt hab ich mir Gedanken gemacht und bin auf die Idee gekommen, dass ich anstatt für jedes Trait eine eigene Methode zu bauen doch einfach die im Rechner benutzen Werte mit den jeweiligen Traits verändern kann, z.B. so:

System.out.println(dpsCalc(DPS,CD,PlacementCap,"trait"));

wobei bei "trait" das jeweilige Trait einfach eingesetzt wird und somit die Werte mit "trait" verändert werden (damage, cool down, range).
Ich hab zuerst an Objekte gedacht und mir überlegt, ob ich nicht einfach ein Objekt von dem Typ "Trait" benutzen kann bei dem vorher festgelegt wurde, was es für Eigenschaften (dmgAmplifier, cdAmplifier, rangeAmplifier) hat, die am Ende in der Rechnung eingesetzt werden.

Jetzt bin ich leider an meine Grenzen als Anfänger gekommen und wollte fragen, wie genau ich das Problem löse bzw. ob es überhaupt geht.
--> Ein "trait" als Übergabe Wert einer Funktion die aufgerufen werden kann um die Rechnung in Abhängigkeit des Traits zu verändern.

Java, Objekt

Spigot start.bat funktioniert nicht?

Hallo ich wollte mir einen Spigot Server der version 1.20.4 für Testzwecke aufsetzen doch die start.bat datei funktioniert nicht, ich habe schon sämtliche codes probiert doch nichts klappt.

Mein code lautet:

java -Xms1024M -Xmx1024M -jar spigot.jar nogui

pause

Wenn ich die batch Datei starte wird angezeigt:

Exception in thread "main" java.lang.UnsupportedClassVersionError: org/bukkit/craftbukkit/bootstrap/Main has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 52.0

       at java.lang.ClassLoader.defineClass1(Native Method)

       at java.lang.ClassLoader.defineClass(Unknown Source)

       at java.security.SecureClassLoader.defineClass(Unknown Source)

       at java.net.URLClassLoader.defineClass(Unknown Source)

       at java.net.URLClassLoader.access$100(Unknown Source)

       at java.net.URLClassLoader$1.run(Unknown Source)

       at java.net.URLClassLoader$1.run(Unknown Source)

       at java.security.AccessController.doPrivileged(Native Method)

       at java.net.URLClassLoader.findClass(Unknown Source)

       at java.lang.ClassLoader.loadClass(Unknown Source)

       at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)

       at java.lang.ClassLoader.loadClass(Unknown Source)

       at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)´

Danach wollte ich die OpenJDK 17 Datei installieren doch ich finde nirgends den Ordner ´´C:\java\openjdk´´

Hier ein Link zur Seite: https://java.tutorials24x7.com/blog/how-to-install-openjdk-17-on-windows

Jetzt habe ich keine ahnung mehr was ich machen sollte ich hoffe mir kann jemand weiterhelfen.

Java, Minecraft, Minecraft Server, Spigot

Als Anfänger Chat-App programmieren aka (Facebook)?

Eigentlich wollte ich eine vereinfachte Uber-App versuchen nachzubauen, habe aber in der ersten Frage viele Antworten bekommen, dass es zu schwer für einen Anfänger ist und z.B. eine Chat-App etwas einfacher wäre.

Deswegen will ich in drei Monaten mein erstes großes Projekt anfangen zu bauen und zwar so eine Chat-App, wo man mit Freunden schreiben und Fotos teilen kann. Also so eine Art Facebook (aber sehr sehr vereinfacht!).

Ich habe gestern auch den Film "The Social Network" nochmal geguckt und jetzt will ich noch mehr die App bauen.

Jetzt die Frage: Hat jemand schon von euch Erfahrung mit einer Chat-App?

Was müsste ich alles wissen (Webentwicklung)?

Und wie viele Stunden brauche ich circa für die einzelnen Themen, um sich an dieses Projekt zu trauen?

Ich finde, dass man beim Learning-by-doing sehr gut lernt und deswegen will ich auch nicht nur lernen, sondern einfach versuchen, auch etwas zu bauen und wenn ich nicht weiterkomme, dann kurz nachschauen, versuchen zu verstehen und zu lernen, was ich machen muss und dann umsetzen, usw..

Auch wenn es ein mega Fail und die App am Ende nicht gut wird, habe ich trotzdem dann viel gelernt und werde es beim nächsten Mal besser machen.

Also zwei Fragen: Was müsste ich alles dafür können und wie viele Stunden Lernzeit ungefähr braucht man dafür, um damit anfangen zu können?

Computer, Software, App, Chat, Programm, HTML, Webseite, Programmierer, programmieren, CSS, Facebook, Java, JavaScript, Android, Informatik, Programmiersprache, Softwareentwicklung, Webentwicklung

revolutionäres Minecraft Server Business?

Hey Leute. Ich bin ein absoluter Minecraft Fan und bin auch seit einigen Jahren an dem Spiel hängen geblieben, auch wenn es Phasen gibt, in denen ich mich weniger mit dem Spiel beschäftige.

Mein größter Traum dahingehend ist es, schon seit Jahren, meinen eigenen Minecraft Server zu erstellen und groß zu veröffentlichen.

Es soll kein 0815 Server werden, den man schon kennt und ich habe auch schon sehr starke Ideen und Konzepte worum es sich dabei dreht, wie es funktionieren soll, grundlegend Marketing usw. Dabei sind denke ich viele revolutionäre Ideen, die wenn sie richtig vermarktet werden, auch meiner Meinung nach krass einschlagen können.

Dass ich mich sehr für Programmierung interessiere passt dabei dann noch perfekt.

Allerdings machen mir dabei einige Dinge immer wieder einen Strich durch die Rechnung.

Zum einen bin ich noch Schüler, was mich relativ viel Zeit kostet (Schule, lernen usw). Nebenbei führe ich auch bereits ein Business, was derzeit anläuft.

Dementsprechend bleibt mir keine Zeit mehr, mich selbst um den gesamten Aufbau des Servers zu kümmern, programmierung usw.
und selbst in der Zeit, wo ich mich selbst an der Programmierung versucht habe, bin ich irgendwann an meine Grenzen gestoßen, weil mir auch da die Zeit und motivation gefehlt hat, mich eingehend mit dem Thema weiterhin auseinanderzusetzen. Oft haben auch einfach Quellen im Internet gefehlt und ich bin einfach nicht weitergekommen und konnte mich nicht weiterentwickeln in dem Gebiet.

Trotzdem habe ich aber immer wieder Lust an dieser Vision irgendwie weiterzuarbeiten und halte mich nun schon mindestens 3 Jahre an diesem Traum fest.

Ich will ihn unbedingt verwirklichen, aber wie gesagt, fehlt es mir an allem.

Zeit, Wissen über Minecraft und Programmierung und auch an finanziellen Mitteln, um diese Arbeit abzugeben.

Mir würde wahrscheinlich noch gerade genug Zeit bleiben, um das Projekt zu koordinieren aber ohne finanzielle Mittel oder irgendwas, wird das wahrscheinlich nichts werden.

Selbst wenn ich es selbst versuchen würde, müsste ich mich wahrscheinlich erstmal wieder 1 Jahr lang täglich 8 Stunden mit dem Lernen von der Programmierung dafür beschäftigen, bevor ich überhaupt mit der Entwicklung des Projektes anfangen kann.

Ich weiß einfach nicht weiter. Hat irgendjemand Ahnung und kann mir irgendwie helfen?

App, Java, Minecraft, Minecraft Server

Weiß jemand, wo mein Problemist?

Ich weiß nicht wirklich, wo das Problem liegt, aber das Programm sagt, es sei in der Klasse „Rennen“ und das Problem liegt in der Methode „lasseMaeuseSprinten“ und „maus.sprinte(maxSpeed, weg)“. Ich hoffe, jemand kennt die Antwort .

Der Code dafür ist hier:

public class Rennmaus {
private String name ;
private String rasse;
public int maxSpeed;
public int weg;
public Rennmaus(String name, String rasse, int maxSpeed, int weg) {
this.name = name ;
this.rasse = rasse ;
this.maxSpeed = 56 ;
this.weg = weg ;
}
public void sprinte (int maxSpeed, int weg) {
int strecke = (int)((Math.random()*maxSpeed)+1);
this.weg += strecke ;
}
public String toString() {
String s = "Name : " +name+ "rasse : " +rasse+ "Strecke : " +weg;
return s ;
}
}
And the second one is here:
import java.util.ArrayList;
class Rennen {
private String namen;
private int anzahlTeilnehmer;
private ArrayList<Rennmaus> teilnehmendeMaeuse= new ArrayList <Rennmaus> ();
private int längeStrecke;
public Rennen(String namen, int rennStrecke) {
this.namen = namen;
this.längeStrecke = längeStrecke;
this.teilnehmendeMaeuse = new ArrayList<Rennmaus>();
this.anzahlTeilnehmer = 0;
}
public void addRennmaus(Rennmaus neueMaus) {
teilnehmendeMaeuse.add(neueMaus);
anzahlTeilnehmer++;
}
public String toString() {
String result = "Rennen: " + namen + ", Teilnehmer: " + anzahlTeilnehmer + ", Renndistanz: " + längeStrecke + "\nTeilnehmende Mäuse:\n";
for (Rennmaus maus : teilnehmendeMaeuse) {
result += maus.toString() + "\n";
}
return result;
}
public int lasseMaeuseSprinten() {
for (Rennmaus maus : teilnehmendeMaeuse) {
maus.sprinte(maxSpeed, weg);
}
}
}
Java, Array, Programmiersprache

Java Code Hilfe?

Ich lerne gerade in der Schule Java zu programmieren. Aber unsere Lehrerin hat uns nicht richtig erklärt, wie unsere Aufgabe gemacht werden soll. Jetzt brauche ich Hilfe. Wir programmieren im Programm BlueJ und sollen im Script unserer Klasse KREIS eine double Methode machen, die den Umfang berechnet. Aber BlueJ zeigt einen Fehler am Ende der Klammer bei der Methode an. Bitte helft mir! Hier ist der Code:

public class KREIS
{
   //Attribute
   private int mittelpunktX;
   private int mittelpunktY;
   private int radius;
   private String fuellfarbe;

   //Konstruktor

   public KREIS(int mittelpunktXneu, int mittelpunktYneu, int radiusneu, String fuellfarbeneu)
   {
       mittelpunktX=mittelpunktXneu;
       mittelpunktY=mittelpunktYneu;
       radius=radiusneu;
       fuellfarbe=fuellfarbeneu;
   }

   //Methode

   public void setzeMittelpunkt(int mittelpunktXNew, int mittelpunktYNew)
   {
       mittelpunktX=mittelpunktXNew;
       mittelpunktY=mittelpunktYNew;
   }

   public void zeichne()
   {
       ZEICHENFENSTER.gibFenster().fuelleKreis(mittelpunktX,mittelpunktY,radius,fuellfarbe);
   }

   public void setzeFarbe(String fuellfarbeNeu)
   {
       fuellfarbe=fuellfarbeNeu;
   }

   public double UmfangBerechnen(radiusNeu);
   {
      return radiusNeu*2*3.14;
   }
}
PC, Software, programmieren, Java, Code, Informatik

Wie mache ich es, dass pro ordner ein JButton hinzugefügt wird?

Ich möchte eine Art Wiki mit Java machen, wo man Sachen herunterladen kann damit dass dann in der App angezeigt wird, doch ich weiß nicht wie ich es mache, dass ein JButton hinzugefügt wird wenn ein Ordner, da ist. Ich möchte dann auch, dass wenn man auf dem Button draufklickt, dass dann die Dateien darin auch aufgelistet werden und dann, wenn man darauf klickt, dass dann der inhalt der Datei angezeigt wird, kann mir jemand helfen?

Main.java

import javax.swing.*;

public class Main {
    public static void main(String[] arg) {
        SwingUtilities.invokeLater(new Runnable() {
            @Override
            public void run() {
                new Frame();
            }
        });
    }
}

Frame.java

import javax.swing.*;

public class Frame extends JFrame {
    public Frame() {
        setResizable(false);
        setSize(1000, 700);
        setDefaultLookAndFeelDecorated(true);
        setLocationRelativeTo(null);
        setTitle("JWiki.jar");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        add(new Panel());

        setVisible(true);
    }
}

Panel.java

import javax.swing.*;
import java.awt.*;

public class Panel extends JPanel { //GUI
    public Panel() {
        //Labels and Buttons
        JLabel l0 = new JLabel();
        l0.setText(".");
        l0.setBounds(0, 10, 10, 5);
        l0.setVisible(true);

        JLabel l1 = new JLabel();
        l1.setText("Downloaded Wikis");
        l1.setBounds(5, -10, 110, 50);
        l1.setVisible(true);

        JLabel l2 = new JLabel();
        l2.setText("Wiki Pages");
        l2.setBounds(120, -10, 65, 50);
        l2.setVisible(true);

        JButton b1 = new JButton();
        b1.setText("Test");
        b1.setBounds(5, 30, 101, 25);
        b1.setVisible(true);


        //Adding Labels and Buttons
        add(l0);
        add(l1);
        add(l2);

        add(b1);

        setLayout(null);
    }

    @Override
    public void paint(Graphics g) {
        super.paint(g);
        draw(g);
    } public void draw(Graphics g) {
        g.setColor(Color.black);
        g.fillRect(115, 5, 2, 700);
        g.fillRect(190, 0, 2, 700);
        g.fillRect(0, 5, 190, 2);
        g.fillRect(0, 25, 190, 2);
    }
}

Java, Code, Programmiersprache, Java Swing, IntelliJ IDEA

Hilfe bei diesem einfachen Bash-Skript?

Ich will dass das Programm wenn ich auf "gruppen anzeigen" klicke mir alle Gruppen im System im Dialig angezeigt werden und das Programm beendet wird wenn ich auf "beenden" klicke. Aber irgendwie kommt entweder ein Fehler dass bei mir das "fi" fehlt was nicht stimmt. Oder es werden die Gruppen auch angezeigt wenn ich auf beenden klicke. Ich habe versucht die If-Anweisungen zu löschen und dann nach  wahl=$(cat $inhalt) ein echo zu machen. Und bei mir wird immer "1" ausgegeben egal auf was ich drücke. Wobei ich eig. Wenn ich auf "beenden" klicke dann sollte "Ende" rauskommen" oder ?

#!/bin/bash
#
inhalt=$(mktemp)
auswahl(){
 dialog --backtitle "Elemente anzeigen"  --title "Elemente zeigen" \
        --cancel-label "Abbruch" \
        --checklist "Bitte treffen Sie Ihre Auswahl!" 10 50 3 \
        "1." "Gruppen anzeigen im Dialig" on \
        "Ende." "Programm beenden" off \
        2>$inhalt
 fehler=$?
 clear
 if [ $fehler != 0 ] ;
  then
   echo "Da ist ein Fehler aufgetreten"
   echo "Fehler-Nr.: $fehler"
   rm $inhalt
   exit 1
 fi
 wahl=$(cat $inhalt)


 if [ "$wahl" == "1." ]; then
     dialog --backtitle "Ausgabe von Gruppen" \
            --msgbox "$(groups)" 20 60 \
 fi


 rm $inhalt
}


while :
 do
  auswahl
 done


Betriebssystem, Technik, Linux, HTML, Webseite, Java, JavaScript, VBA, Bash, Batch, cmd, Informatik, Informationstechnik, PHP, Programmiersprache, Python, Shell, Webentwicklung

Windows 10 auf Windows 11 erzeugen - wie geht das und ist das sinnvoll?

Hallo Community!

Wie an meinen letzten Fragen zu sehen versuche ich seit geraumer Zeit, Minecraft After Humans unter dem Technic Launcher zum laufen zu bringen, was mir allerdings nicht richtig gelingt (Arbeitsspeicher läuft voll und Spiel stützt ab). Nach etlichen verschiedenen und allesamt gescheiterten Lösungsansätzen* bin ich jetzt bei dem Gedanken, dass das Problem vielleicht mein Betriebssystem ist und die Mods (ältere Minecraft-Versionen ohne Mods funktionieren) zu alt sind und sich einfach nicht damit vertragen.

Deswegen habe ich darüber nachgedacht, wie ich für das Spiel eventuell Windows 10 simulieren kann, aber ganz so weit reichen meine Computerkenntnisse leider nicht. Deswegen bräuchte ich hier mal Hilfe, ob das sinnvoll ist und wenn ja, wie ich das bewerkstellige.

*Lösungsansätze beinhalten:

  • Das Installieren verschiedener Modpacks vom Technic Launcher, die abgesehen von der Vanilla-Version allesamt das gleiche Problem haben, egal welche MC-Version benötigt wird
  • Das Zuweisen von mehr Arbeitsspeicher
  • Das Zuweisen von weniger Arbeitsspeicher
  • Verschiedene online angebotene Java-Argumente
  • Das eigenhändige Modden des Spiels mithilfe des MC Modinstallers (damit startet das Spiel erst gar nicht)
  • Die Installation unterschiedlicher Java-Versionen
  • Neuinstallation sowohl des Spiels als auch des Launchers als auch der verschiedenen Modpacks
  • Let's plays gucken und stattdessen was anderes spielen
Mods, Java, Minecraft, Technic Launcher, Windows 11

Meistgelesene Beiträge zum Thema Java