Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法在Eclipse中的“创建Servlet”对话框中选择项目_Java_Eclipse_Servlets_Jakarta Ee - Fatal编程技术网

Java 无法在Eclipse中的“创建Servlet”对话框中选择项目

Java 无法在Eclipse中的“创建Servlet”对话框中选择项目,java,eclipse,servlets,jakarta-ee,Java,Eclipse,Servlets,Jakarta Ee,我遇到了类似的问题,但提供的解决方案并不能解决我的问题。所以问题是我不能在Eclipse中的CreateServlet对话框中选择项目。 这使我无法完成创建新servlet的过程 根据解决方案的建议,我创建了一个动态Web项目,并确保在foo->Properties->projectfacests中选中了动态Web模块。我也在JavaEE透视图中 项目结构:- 创建servlet向导:- 项目属性:- 我正在Mac OS Mojave 10.14.5版上运行以下Eclipse实例:- 面向企

我遇到了类似的问题,但提供的解决方案并不能解决我的问题。所以问题是我不能在Eclipse中的CreateServlet对话框中选择项目。 这使我无法完成创建新servlet的过程

根据解决方案的建议,我创建了一个动态Web项目,并确保在foo->Properties->projectfacests中选中了动态Web模块。我也在JavaEE透视图中

项目结构:-

创建servlet向导:-

项目属性:-

我正在Mac OS Mojave 10.14.5版上运行以下Eclipse实例:-

面向企业Java开发人员的Eclipse IDE

版本:2018-12 4.10.0 构建id:20181214-0600

任何帮助都将不胜感激。 干杯

编辑下面的.project文件:-

   <?xml version="1.0" encoding="UTF-8"?>
      <projectDescription>
      <name>Foo</name>
      <comment></comment>
      <projects>
      </projects>
      <buildSpec>
         <buildCommand>
             <name>org.eclipse.jdt.core.javabuilder</name>
             <arguments>
             </arguments>
         </buildCommand>
         <buildCommand>
         
     <name>org.eclipse.wst.common.project.facet.core.builder</name>
        <arguments>
        </arguments>
    </buildCommand>
    <buildCommand>
        <name>org.eclipse.wst.validation.validationbuilder</name>
        <arguments>
        </arguments>
    </buildCommand>
</buildSpec>
<natures>
    <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
     
 
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
     
 <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
     <nature>org.eclipse.jdt.core.javanature</nature>
 </natures>
</projectDescription>
这使我无法完成创建新servlet的过程

软件在可重用之前,首先必须是可用的。我理解你对Eclipse的失望。尝试以下步骤:

使用-clean参数重新启动Eclipse。 如果仍然不起作用,请备份并删除Eclipse工作区的.metadata目录。元数据通常是工作区目录中的隐藏目录。重复1。 禁用/删除不属于Eclipse默认包的所有第三方插件,并重复1。 顺便说一下。创建Servlet总是有传统的方法。您只需创建一个新类并使其扩展HttpServlet,然后将其映射到web.xml中

示例Servlet Java类


项目选择器是否显示任何可选择的项目?能否附加.project文件?@LittleSanti不,它甚至是交互式的。如果我单击下拉列表,什么也不会发生。@nitind我已经用.project文件更新了这个问题。如果它让您感觉更好的话,我在六七年前放弃了Eclipse,转而使用IntelliJ IDEA,除了昨天,我没有回头看
// Import other required java libraries
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

// Extend HttpServlet class
public class HelloWorldServlet extends HttpServlet {

   private String message;

   public void init() throws ServletException {
      // Do required initialization
      message = "Hello World";
   }

   public void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

      // Set response content type
      response.setContentType("text/html");

      // Actual logic goes here.
      PrintWriter out = response.getWriter();
      out.println("<h1>" + message + "</h1>");
   }

   public void destroy() {
      // do nothing.
   }
}
...
<servlet>
   <servlet-name>comingsoon</servlet-name>
   <servlet-class>mysite.server.ComingSoonServlet</servlet-class>
</servlet>
<servlet-mapping>
   <servlet-name>comingsoon</servlet-name>
   <url-pattern>/*</url-pattern>
</servlet-mapping>
...