0

私がやりたいことは、何が起こっているのかを完全に理解するために、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>

コマンドラインから言うと:

mvn 検証

ビルドエラーが発生します。私は何を間違っていますか? ここに画像の説明を入力

画像へのリンクは次のとおりです。http://s11.postimage.org/jwr1laf5d/image.png

4

2 に答える 2

1
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> 

また、他の投稿からわかるように、プロジェクト ディレクトリが作成されていません。Maven アーキタイプを使用して、IDE なしでプロジェクトを作成できます。

mvn archetype:generate -DgroupId=com.maxheapsize
                       -DartifactId=jsf2demo
                       -Dversion=1.0-SNAPSHOT
                       -DarchetypeArtifactId=maven-archetype-webapp
                       -DinteractiveMode=false

利用可能なアーキタイプのリストはこちら

http://maven.apache.org/guides/introduction/introduction-to-archetypes.html
于 2013-03-10T20:57:34.637 に答える
0

jsf依存関係に必要なすべての依存関係を含まないリポジトリを1つだけ指定しているようです。また、Maven中央リポジトリーを指すようにしてみるべきだと思います。servlet-api参照しているJavaリポジトリには、たとえばjsfpomで必要なものが含まれていないようです。

于 2013-03-10T20:00:33.607 に答える