Executando java no terminal

11 respostas
P

Olá!!!

Gostaria de pedir uma ajudinha. Estou executando meus arquivos java no netbeans, porém preciso executá-los em alguns momentos pelo terminal. Mas nem sempre o que executo no netbeans compila pelo terminal. Quando estou utilizando uma classe em outra classe, está dando problema pelo terminal. Por exemplo, o código abaixo funciona perfeitamente pelonetbeans, mas dá erro no terminal:

classe Main.java

package projeto_jade;

import javax.swing.JFrame;

import javax.swing.JButton;

import projeto_jade.teste;
public class Main extends JFrame{

private JFrame frame;

private JButton b1;

private teste t;
public Main(){
    frame = new JFrame();
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    b1 = new JButton("Teste");
    frame.add(b1);
    frame.setSize(1024,768);
    frame.setVisible(true);
    t = new teste();
    b1.setText("Modificando");
}
public static void main(String[] args) {
    // TODO code application logic here
    Main demo = new Main();
    demo.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

}

classe teste.java

package projeto_jade;
import javax.swing.JOptionPane;

public class teste {
String t = JOptionPane.showInputDialog(“Qual o seu nome?”);

}

A classe teste é compilada normalmente, mas a classe Main apresenta erros de que a classe não foi encontrada.

Conto com o esclarecimento de vocês.

11 Respostas

W

priscillafabreu,
bom dia, de que forma você esta executando seu codigo no terminal, uma dica, sempre que for postar codigo coloca na tag [code].

pedruhenrik

olá priscillafabreu,

de que forma você esta executando seu codigo no terminal, uma dica, sempre que for postar codigo coloca na tag [code].
coloca também a mensagem de erro ^^

att,

P

Olá!!!

Segue a forma que compilei e o erro, em anexo.

Obrigada,
Priscilla

ViniGodoy

Você declarou uma variável com o tipo teste:
private teste t;

Você tem a classe teste? Está no mesmo pacote da classe main?

pedruhenrik
package projeto_jade;

import javax.swing.JButton;
import javax.swing.JFrame;

import projeto_jade.Teste;

public class Main extends JFrame {
	private JFrame frame;
	private JButton b1;
	private Teste t;//estava minusculo

	public Main() {
		frame = new JFrame();
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		b1 = new JButton("Teste");
		frame.add(b1);
		frame.setSize(1024, 76);
		frame.setVisible(true);
		t = new Teste(); // t = new teste();
		b1.setText("Modificando");
	}

	public static void main(String[] args) {
		// TODO code application logic here
		Main demo = new Main();
		demo.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}

}
package projeto_jade;

import javax.swing.JOptionPane;

public class Teste {//teste estava minusculo
	String t = JOptionPane.showInputDialog("Qual o seu nome?");

}

e o import acho q tb tava errado, testa ai e boa sorte ^^

P

A classe teste está no mesmo pacote.

Obs.: Mesmo alterando para Teste, continuou dando o mesmo erro.

Obrigada

Priscilla

pedruhenrik

hummm

vc testou o código q eu coloquei no outro post? hehe

deu erro tb?rs

P

Olá pedruhenrik

testei o seu código e continua com o mesmo erro. Não sei o que posso estar fazendo errado…

ViniGodoy

Tente compilar com

javac -classpath . Main.java

Ev3rton

Olá,

Acho que o problema é que você precisa especifiar o classpath quando for executar pelo terminal, no computador que estou agora não tenho o SDK, mas acretido que o comando deva ser algo parecido com esse:

javac nomeDaClasse.java -c enderecoCompletoDaPastaOndeEstaoAsClasses

Espero ter ajudado…

Edit: não tinha visto que o ViniGodoy já respondeu isso.

P

Consegui compilar.
Compilei pelo terminal uma pasta antes da que estava armazenado e foi…

Obrigada

Criado 15 de setembro de 2010
Ultima resposta 15 de set. de 2010
Respostas 11
Participantes 5