This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
I am working on the Head Servlet&JSP book projects. I can not recognize import packages and can not compile.
can anyone so kindly help me about this? I google online about the classpath. but I might misunderstand it. Please help me about this Thanks!
There is a problem about javac compiling. Here is my development directory structure
project directory C:\Users\myname\Documents\JSP\MyProject\beerV1
under beerV1 I followed the book,
the BeerSelect.java source file is in C:\Users\myname\Documents\JSP\MyProject\beerV1\src\com\example\web
the BeerExpert.java source file is in C:\Users\myname\Documents\JSP\MyProject\beerV1\src\com\example\model
the code of BeerSelect.java
the code of BeerExpert.java compiled with commandline under windows7:
C:\Users\myname\Documents\JSP\MyProject\beerV1\src\com\example\model> javac -classpath C:\tools\tomcat\lib\servlet-api.jar -d C:\Users\myname\Documents\JSP\MyProject\beerV1\classes BeerExpert.java
it comiled and generated the BeerExpert.class under directory C:\Users\myname\Documents\JSP\MyProject\beerV1\classes\com\example\model
when I try to compile the BeerSelect.java it can not import package com.example.model.BeerExpert.class Here is my commandline to compile BeerSelect.java
C:\Users\myname\Documents\JSP\MyProject\beerV1\src\com\example\web> javac -classpath C:\tools\tomcat\lib\servlet-api.jar; C:\Users\myname\Documents\JSP\MyProject\beerV1\classes\com\example\model\*.class:. -d C:\Users\myname\Documents\JSP\MyProject\beerV1\classes BeerExpert.java
For the people that still run into the same problem, just like me today... There is an even easier solution:
- make a new class in eclipse with the exact same package and class name.
- save the BeerSelect.java class in eclipse and locate it in your eclipse workspace which was for me C:\Users\VDM\Desktop\workspaceLaptop\DemoJSP\build\classes\com\example\web\BeerSelect.class
- copy that class to your deployment environment for me C:\apache-tomcat-7.0.47\webapps\Beer-v1\WEB-INF\classes\com\example\web
And you're done.. The cool thing about eclipse is that it automatically compiles the .java to .class for you without these (complicated) cmd commands.
You can probably do it with any java compiler that automatically generates .class files, just make sure you use the same package and class name as they ask in the book