IntelliJ を IDE として使用して構築している Android クライアント/サーバー プログラムがあります。
サーバーは、テスト用であっても、EC2 ホストで実行されます。さまざまな場所でラップトップで作業していて、どこに行ってもポート転送を設定したくないからです。
すべてのライブラリを再送信せずにサーバーコードを再デプロイして、少し速くする便利な方法があるかどうか疑問に思っています。
サーバーを .jar として実行しています。つまり、 java -jar Server.jar です。
すべてのライブラリを 1 つの jar に入れ、コンパイルされたコードのみを送信することは可能ですか?
別名。
現時点では、jar が 1 つだけあります。
サーバー.jar
でも、2瓶に変更できますか?
libraries.jar サーバー.jar
再アップロードして実行するだけです
サーバー.jar
それはできますか?
* アップデート *
を使用してこれを簡単に達成できることに気付きました
java -cp ./libraries.jar -jar サーバー.jar
しかし、他の誰かが同じ精神的な問題を抱えている場合に備えて、質問はそのままにしておきます
* 更新 2 *
OK、上記は機能しません! 外部ライブラリを無視する -jar コマンドについての奇妙なこと :S (では、なぜ -cp フラグを許可するのか???!! Java は民主主義のようなものです - 他のすべてを除いて最悪の言語です!)
ただし、これは次のことを行います。
java -cp server.jar:libraries.jar server.Server
server.Server はメイン クラスです。
外部 Jar 内のクラスへのアクセスを参照してください