在没有IDE的情况下使用maven创建jsf应用程序

在没有IDE的情况下使用maven创建jsf应用程序,jsf,jakarta-ee,maven,Jsf,Jakarta Ee,Maven,我想做的是在不使用任何IDE的情况下设置JSF应用程序,以完全了解正在发生的事情 这就是我到目前为止所做的: 我创建了一个目录(D:\Project\MyMavenProject)并添加了一个pom.xml: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://m

我想做的是在不使用任何IDE的情况下设置JSF应用程序,以完全了解正在发生的事情

这就是我到目前为止所做的:

我创建了一个目录(D:\Project\MyMavenProject)并添加了一个pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.maxheapsize</groupId>
  <artifactId>jsf2demo</artifactId>
  <packaging>war</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>jsf2demo Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>com.sun.faces</groupId>
      <artifactId>jsf-api</artifactId>
      <version>2.0.0-b13</version>
      <scope>compile</scope>
    </dependency>

    <dependency>
      <groupId>com.sun.faces</groupId>
      <artifactId>jsf-impl</artifactId>
      <version>2.0.0-b13</version>
      <scope>compile</scope>
    </dependency>

    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
    </dependency>

    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>servlet-api</artifactId>
      <version>2.5</version>
    </dependency>

  </dependencies>
  <build>
    <finalName>jsf2demo</finalName>
  </build>

  <repositories>
    <repository>
      <id>maven2-repository.dev.java.net</id>
      <name>Java.net Repository for Maven</name>
      <url>http://download.java.net/maven/2</url>
    </repository>
  </repositories>

</project>

4.0.0
com.maxheapsize

听起来您只指定了一个存储库,它不包含jsf依赖项所需的所有依赖项。我认为您还应该尝试指向maven中央存储库。 您所指的java repo似乎不包含jsf pom所需的
servlet api

http://download.java.net/maven/2/javax/servlet/
您的存储库没有servlet api或jstl的依赖项

您可以使用
http://repo1.maven.org/maven2 respository
包含您正在寻找的jstl和servlet api版本

 <repositories>
    <repository>
      <id>maven2-repository.dev.java.net</id>
      <name>Java.net Repository for Maven</name>
      <url>http://download.java.net/maven/2</url>
    </repository>
     <repository>
      <id>maven2-central</id>
      <name>Maven Central</name>
      <url>http://repo1.maven.org/maven2</url>
    </repository>
  </repositories> 
可以在这里找到可用原型的列表

http://maven.apache.org/guides/introduction/introduction-to-archetypes.html

你能把你得到的错误贴出来吗?可能会有帮助。@benzonico添加了这个图像,谢谢。你能发布你的完整错误吗?它在图像的末尾被切断了。你可以理解有没有IDE的情况。IDE只是一个工具,可以极大地帮助您完成这些事情。我需要先创建目录结构吗?还是我的思路正确?我认为您可以删除pom中的
存储库
标记,并使用以下链接中给出的值更改版本的值:想法是使用默认存储库,而不是自定义存储库不完整(您仍然可以将其与maven central repository结合使用)这与jsf无关,这是一个纯粹的maven问题。我只是在尝试:com.sun.faces jsf api 2.2.0-m10编译,但仍然没有成功。您能为我提供一个非常简单的pom.xml吗?我真的很想看到maven安装一些东西。然后,我将尝试返回JSF。
4.0.0组artId 0.0.1-SNAPSHOT junit junit 4.11
http://maven.apache.org/guides/introduction/introduction-to-archetypes.html