0

ポータブルJettyサーバーが欲しいのですが。デフォルトのjetty.homeディレクトリには次のものが含まれます

    JettyHome
    │
    ├─etc
    │├─jetty.xml
    │├─jetty-logging.xml
    │├─jetty-plus.xml
    │└─webdefault.xml
    ├─ログ
    │
    ├─lib
    │├─jetty-6.1.26.jar
    │└─other.jar
    ├─webapps
    │└─MyWebApp.war
    ├─start.jar
    └─start.ini

etc以上のことから、以下を削除してlibディレクトリ化していきたいと思います。

    JettyHome
    │
    ├─ログ
    ├─webapps
    │└─MyWebApp.war
    └─start.jar

OneJarとを使用して、すべてのlibフォルダーjarをstart.jarにパックしました。簡単に実行できるように、フォルダの内容をjar内に保持する方法はありますか?start.inietc

java -Xmx640M -jar rw.jar 

それ以外の

java -Xmx640M -jar rw.jar etc/jetty.xml etc/jetty-annotations.xml etc/jetty-deploy.xml etc/jetty-logging.xml etc/jetty-webapps.xml 

だから私はポータブルリリースを持つことができ、クライアントの場所で誰かが構成を変更することを心配することはありません。

ありがとう。

4

1 に答える 1

1

最善の策は、アプリケーションに突堤を埋め込むことです。

http://wiki.eclipse.org/Jetty/Tutorial/Embedding_Jetty

これを使用すると、クラスパスに桟橋の瓶を置く必要があり、うまくいくはずです。必要に応じてすべてを1つのjarに丸呑みし、マニフェストにすべてを開始するMainクラスを含めることもできます。

とにかく、xmlファイルは実際にはjava上のxmlの単なる薄い層です。ここに埋め込まれている例のいくつかを見てください。それは正しいアプローチへの手がかりになるはずです。

http://git.eclipse.org/c/jetty/org.eclipse.jetty.project.git/tree/examples/embedded/src/main/java/org/eclipse/jetty/embedded

于 2012-11-08T16:56:51.933 に答える