0

数年後、私は Web アプリケーションの構築に戻ってきましたが、たまたま使用しているコンテナーに依存せずにサーブレットをコンパイルしたことが一度もないことに気付きました。

もちろん、それを続けることもできますが、何らかの「公式」サーブレット api JAR の方が好ましいと思います。

ここで見つけました:http://repo.maven.apache.org/maven2/javax/servlet/servlet-api/2.5/

しかし、私が理解していないのは、それがどうやってそこにたどり着いたのですか?com.sun や com.oracle で始まるグループ ID ではないのはおかしいですか?

私が考えることができる他の唯一の公式の方法は、Glassfishの実装に依存していますか?

ありがとう

4

2 に答える 2

0

Maven の servlet-api.jar には、パブリックに定義されたインターフェイスのインターフェイスと抽象クラスのみが含まれています。そこにはメソッドの実装はなく、クラスとメソッドの署名が正しいことを確認するのは簡単です。コンパイルする必要があるのはそれだけです。(もちろん、実行は別の問題であり、サーブレットコンテナーによって提供される実際の実装が必要です)。

com.sun および com.oracle パッケージには通常、標準 API の「公式」実装が含まれていますが、標準クラス ライブラリにはまだ含まれていません。

tl;dr : http://repo.maven.apache.org/maven2/javax/servlet/servlet-api/2.5/は、コンパイルに使用してもまったく問題ありません。

于 2012-07-31T09:56:59.137 に答える
0

「javax.servlet」は、実際には「Java 拡張機能」の公式の Sun/Oracle グループ ID であるため、javax. 「com.sun」は、すべての内部の重要な実装に使用されます。

于 2012-07-31T09:57:15.693 に答える