【发布时间】:2017-03-15 06:46:32
【问题描述】:
我是 Java 新手,我正在尝试仅使用命令行在 linux 上编译我的 Servlet。在浏览器上看到此错误后,我决定这样做:
命令javac -classpath /opt/tomcat/lib/servlet-api.jar ComputerSV.java 给出以下错误:
ComputerSV.java:13: error: cannot find symbol
ArrayList<Computer> computers = new ArrayList<>();
^
symbol: class Computer
location: class ComputerSV
ComputerSV.java:15: error: cannot find symbol
new Computer(
^
symbol: class Computer
location: class ComputerSV
ComputerSV.java:25: error: cannot find symbol
new Computer(
^
symbol: class Computer
location: class ComputerSV
3 errors
而我的 Servlet 源代码是:
package com.lcdss.compmng.controller;
import java.io.IOException;
import java.util.ArrayList;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;[Imgur](http://i.imgur.com/D6rN3UA.png)
import javax.servlet.http.HttpServletResponse;
class ComputerSV extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
ArrayList<Computer> computers = new ArrayList<>();
computers.add(
new Computer(
1,
"HP",
"hostname",
"Windows 10 Pro x64",
"Intel I7 7700K 4.2 GHz",
2048,
8196,
"Anapolis"
),
new Computer(
2,
"DELL",
"hostname",
"Windows 10 Home Basic x64",
"Intel I7 7500U 2.5 GHz",
512,
4098,
"Goiania"
)
);
request.setAttribute("computers", computers);
request.getRequestDispatcher("computer/index.jsp").forward(request, response);
}
}
我使用 tomcat 作为 Web 服务器,并且只是一个文本编辑器 (Atom) 来帮助我完成这个挑战(以及现在的 stackoverflow)。我现在的问题是编译器没有找到我已经编译的类计算机,但没有成功修复此错误。
【问题讨论】:
-
一次编译所有类。或者使用真正的构建,比如 gradle。
-
你为什么不使用像eclipse或IntelliJ这样的IDE?
-
因为在使用 IDE 或其他工具使事情变得简单之前,我想知道事情是如何工作的。下一步将使用我喜欢的 Jetbrains 的 IntelliJ,但现在,只需使用我的“裸手”。
标签: java tomcat servlets tomcat8