Compilar Projeto+SQL pelo CMD

12 respostas
A

Caros,

Estou tentando compilar meu projeto pelo CMD do Windows. O que acontece que como é um projeto envolvendo JAVA + postgreSQL, não estou conseguindo compilá-lo pelo CMD.

Eu acredito que devo criar nas ‘variáveis de ambiente’ do windows, um caminho para o jar do jdbc (PostgreSQL).

Alguém pode em ajudar?

Att.

12 Respostas

fernandopaiva

Nao tem nada a ver com import.

faca o seguinte, crie suas classes e copile-as uma a uma, assim vai saber onde esta dando erros.

para estar usando CMD ou outro terminal qquer, soh pode estar aprendendo, e se estiver aprendendo leia a apostila FJ11 da Caelum.

t+

A

Cara,

Mas eu digo compilar/executar, tipo, eu consigo executar aquivos .java pelo cmd, desde que eu tenha o JDK instalado e tenha as variáveis de ambiente configuradas: CLASSPATH, PATH e JAVA_HOME.

No caso da conexão com o BD eu preciso de alguma variável?

Att.

fernandopaiva

no caso de jdbc vc precisa do driver do seu banco e usa-lo como uma biblioteca.

veja.

//aqui fiz pelo CMD
package bd;
import java.sql.*;
import javax.swing.JOptionPane;

public class Conexao{
    public static Connection getConnection() throws SQLException{
        try {
             Class.forName("com.mysql.jdbc.Driver");                             
             return DriverManager.getConnection("jdbc:mysql://xxx.xxx.xxx.xxx/bd?user=root&password=root");                         
        } catch (ClassNotFoundException e) {
            JOptionPane.showMessageDialog(null, e.getMessage());            
            throw new SQLException();            
        }        
    }     
}


package bd;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.swing.JOptionPane;

public class TestaConexao {
   
   public static void main(String[] args) throws SQLException {
       Connection conMySQL = Conexao.getConnection(); //conecta mysql
       PreparedStatement stm = conMysqlSql("select * from tabela");
       ResultSet rs = stm.executeQuery();
       if(rs.next()){
           System.out.println("conectou ao bd e a tabela existe");
       }
       rs.close();
       stm.close();
       conMySQL.close();
             
   }
}

Adicione o driver a raiz do seu teste de sistema.

t+ e boa sorte.

A

Cara,

Eu não estou querendo me conectar pela ide, e sim quero compilar ou executar o .java pelo cmd.

Exemplo: executar um .jar que está no desktop…

Att.

fernandopaiva

eu fiz o exemplo ae pelo CMD

para vc executa-lo pelo cmd basta vc digitar: java MinhaClasse

javac compila
java executa

java MinhaClasse

veja q nao coloco a extensao no comando java.

t+

sowyer

O fato de usar acesso ao banco de dados, não tem relação de como você compila/executa a sua aplicação “fora da IDE”. Basta que todos os jars necessários estejam no CLASSPATH.

A

É issssoo que eu digo!

Mas para adicionar o jar do jdbc no CLASSPATH como eu faço? Devo copiar em algum diretório o jar?

Obrigado.

Att.

sowyer

assim:

set CLASSPATH=/caminho/para/o/jar1;/caminho/para/o/jar2
A

cara ótimo!

Mas isso eu adiciono nas variáveis de ambiente do windows? Porque wu não entendi como está no que você colocou ai em baixo.

Obrigado

sowyer

Isso.

O procedimento é :

Você entra no terminal, e digita esse comando ai que eu informei. Esse comando está setando a sua variável CLASSPATH, incluindo o caminho para o jar do driver do MySQL.

OU você pode ir nas variáveis de ambiente do windows ( modo gráfico lá pelo painel de controle ) e adiciona o caminho do jar do MySQL no fim da definição do CLASSPATH.

A segunda forma é melhor, pois caso você feche o terminal, não terá que redefinir a variável CLASSPATH.

A

excelente!

Eu prefiro a 2a. Opção tb. Ai no caso eu terei 2 CLASSPATH (variáveis de ambiente) um contendo o caminho lib do jdk e outro com o caminho do jar do “mysql”.

Ex.: CLASSPATH
“c:/*******,jdbc,jar”

Isso?

Abraço!

A

OBS: Eu quero fazer algo de forma prática, para que todo os .jar que eu rodar e que conectaem ao driver do postgresql possam rodar sem nenhum problema.

Att.

Criado 3 de setembro de 2011
Ultima resposta 5 de set. de 2011
Respostas 12
Participantes 3