Java sem IDE ( na unha )

7 respostas
Jedi

Galera, estou usando o compilador Java na linha de comando. Preciso saber como compilo na linha de comando usando packages. Ex:
1- este é o caminho do meio ambiente de produção: c:\des\java\web\proj\minhaApp
2- tenho os seguintes packages: src\com\example\web
src\com\example\model. Estes packages são subpastas de minhaApp
3- eu já compilei o .java que estava no model ( gerando o .class ) e agora quero compilar o .java que está no src\com\example\web importando o que está no model ( import src.com.example.model;

Ajuda aê…
javac … e o resto ?

7 Respostas

kapa01

se eu não me engano você tem que trocar as barras por ponto.
Ex: C:\des\java\web\proj\minhaApp> java src.com.example.web.SuaClasseASerExecutada

Felagund

Compilar na linha de comando costuma ser muito chato, esperimente usar o ANT ou o Maven na linha de comando, garanto que vai achar interessante.

:slight_smile:

Jedi

Rapaziada valeu pela força. Agradeço ao FelaGund por me indicar o ANT e o Maven. Já ouvi falar nestas ferramentas mas, nunca utilizei. Porém para um iniciante pesquisar agora outra ferramenta sai do foco do problema que quero resolver e só atrapalha o andamento do aprendizado. Mas, valeu assim mesmo. Obrigado. :slight_smile:

thiago.correa
Você não precisa compilar separado, veja o exemplo, na minha máquina eu tenho a seguinte árvore de diretório
C:\Temp\MinhaApp>tree
Listagem de caminhos de pasta
O número de série do volume é D6B5-6EDA
C:.
├───classes   └───com       └───fox           └───model
└───src
    └───com
        └───fox
            └───model
E nos diretórios eu tenho os seguintes arquivos
C:\Temp\MinhaApp\classes
C:\Temp\MinhaApp\src
C:\Temp\MinhaApp\classes\com
C:\Temp\MinhaApp\classes\com\fox
C:\Temp\MinhaApp\classes\com\fox\model
C:\Temp\MinhaApp\src\com
C:\Temp\MinhaApp\src\com\fox
C:\Temp\MinhaApp\src\com\fox\B.java
C:\Temp\MinhaApp\src\com\fox\model
C:\Temp\MinhaApp\src\com\fox\model\A.java
o conteúdo dos arquivos A e B.java respectivamente
package com.fox.model;

public class A {

	private String nome = "thiago";
	public String getNome() {
		return nome;
	}
}
package com.fox;

import com.fox.model.A;
class B {	
	
	public static void main(String[] b) {
		A a = new A();
		System.out.println(a.getNome());
	}
}

Comando para compilar os dois

C:\Temp\MinhaApp\src>javac -d ..\classes com\fox\model\A.java com\fox\B.java

Repare que eu estou no diretório src que não faz parte da árvore dos pacotes

Bom acho que era isso, achei boa a tua iniciativa, bons estudos

Ah, aproveitando, para rodar é só fazer o seguinte

C:\Temp\MinhaApp\src>cd ..

C:\Temp\MinhaApp>cd classes

C:\Temp\MinhaApp\classes>java com.fox.B

Lembre-se que você vai ter que adaptar a estrutura de diretórios da sua máquina, se sentires dificuldades, copie a estrutura de diretórios e vá fazendo testes, até você dominar direitinho!

Jedi

Valeu Thiago !!
Vou analisar e testar.
:smiley:

Jedi

Valeu mesmo Thiago !!
Funcionou !! :smiley:

thiago.correa

Jedi:
Valeu mesmo Thiago !!
Funcionou !! :D

Mas é claro que funcionou :wink:

Criado 16 de junho de 2009
Ultima resposta 17 de jun. de 2009
Respostas 7
Participantes 4