C:\MyProjects\beerV1>javac -classpath C:\Programas\Apache Software Foundation\Tomcat 5.5\common\lib\servlet-api.jar:classes:. -d classes src\com\example\web\BeerSelect.java
javac: invalid flag: Software
Usage: javac <options> <source files>
where possible options include:
-g Generate all debugging info
-g:none Generate no debugging info
-g:{lines,vars,source} Generate only some debugging info
-nowarn Generate no warnings
-verbose Output messages about what the compiler is doing
-deprecation Output source locations where deprecated APIs are u
sed
-classpath <path> Specify where to find user class files
-cp <path> Specify where to find user class files
-sourcepath <path> Specify where to find input source files
-bootclasspath <path> Override location of bootstrap class files
-extdirs <dirs> Override location of installed extensions
-endorseddirs <dirs> Override location of endorsed standards path
-d <directory> Specify where to place generated class files
-encoding <encoding> Specify character encoding used by source files
-source <release> Provide source compatibility with specified release
-target <release> Generate class files for specific VM version
-version Version information
-help Print a synopsis of standard options
-X Print a synopsis of nonstandard options
-J<flag> Pass <flag> directly to the runtime system
O meu objectivo é : compilar este servlet (.java) com o jar file (servlet-api.jar) que esta na pasta lib do tomcat e colocar o fiheiro (.class)que ele gerou na directoria que indiquei no comando.
Nºao to conseguindo perceber porque ele na ta compilando !
Boas, executou mas devolveu me os seguintes erros :
C:\MyProjects\beerV1>javac -classpath "C:\Programas\Apache Software Foundation\T
omcat 5.5\common\lib\servlet-api.jar:classes:." -d classes src\com\example\web\B
eerselect.java
src\com\example\web\Beerselect.java:3: package javax.servlet does not exist
import javax.servlet.*;
^
src\com\example\web\Beerselect.java:4: package javax.servlet.http does not exist
import javax.servlet.http.*;
^
src\com\example\web\Beerselect.java:7: cannot find symbol
symbol: class HttpServlet
public class BeerSelect extends HttpServlet{
^
src\com\example\web\Beerselect.java:9: cannot find symbol
symbol : class HttpServletRequest
location: class com.example.web.BeerSelect
public void doPost(HttpServletRequest request,
^
src\com\example\web\Beerselect.java:10: cannot find symbol
symbol : class HttpServletResponse
location: class com.example.web.BeerSelect
HttpServletResponse response)throws IOEx
ception, ServletException{
^
src\com\example\web\Beerselect.java:10: cannot find symbol
symbol : class ServletException
location: class com.example.web.BeerSelect
HttpServletResponse response)throws IOEx
ception, ServletException{
^
src\com\example\web\Beerselect.java:14: cannot find symbol
symbol : class PrinterWriter
location: class com.example.web.BeerSelect
PrinterWriter out = response.getWriter();
^
7 errors
O problema esta nos jar files que ele não encontra, pode me explcar como faço para que ele carregue estes jar files (servlet-api.jar)
No Windows, o separador de endereços é o ponto-e-vírgula, e não os dois-pontos. Ao invês de você separar com : (entre o servlet-api.jar e a sua pasta), separe com ;
Valeu ! alguem me pode indicar aonde posso obter mais informações sobre como usar este recurso, ou seja compilar desta forma ? queria perceber bem como isso funciona !
Obrigado desde ja !
estou habituado a usar o IDE (Netbeans) e agora estoua fazer uns exercicio para a prova de SCWCD e tenho que fazer isso na unha !
Caso o “na unha” ainda lhe permita usar o Ant, é uma ótima ferramenta pra você experimentar nos casos que você não pode (ou não quer) utilizar uma IDE pra gerenciar o processo de desenvolvimento. Na verdade, o Maven é mais apropriado para isso, só que o Ant é mais customizável (e mais trabalhoso).
Meu amigo agora estou com um erro relacionado om impror de pacotes :
Desta vez eu nao consigo fazer o import de um package que criei e
estou a receber o seguinte erro :
C:\MyProjects\beerV1>javac -classpath "C:\Programas\Apache Software Foundation\T
omcat 5.5\common\lib\servlet-api.jar; classes" -d classes src\com\example\model\
BeerExpert.java
src\com\example\model\BeerExpert.java:3: package com.example.web does not exist
import com.example.web.*;
^
Note: src\com\example\model\BeerExpert.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 error
Ou seja náo consigo fazer o import do com.example.web que contem uma classe chamada BeerSelect e que por sua vez tem um metodo chamado doPost eis o codigo da class :
//Class que import o pacote
package com.example.model;
import com.example.web.*; // TA DANDO ERRO AQUI
import java.util.*;
public class BeerExpert{
public List getBrands(String color){
List brands = new ArrayList();
if(color.equals("amber")) {
brands.add("Jack Amber");
brands.add("Red Moose");
}
else{
brands.add("Jail Pale Ale");
brands.add("Gout stout");
}
return(brands);
}
}
//Class que tem o metodo doPost que quero usar na outra class
package com.example.web;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
public class BeerSelect extends HttpServlet{
public void doPost(HttpServletRequest request,
HttpServletResponse response)throws IOException, ServletException{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("Beer Selection Advice<br>");
String c = request.getParameter("color");
out.print("<br>Apanha a cerveja de cor : " + c);
}
}