質問: いくつかjava開発環境についてお聞きしたいことがあります。 箇条書きにしてずっと疑問に思っていることを挙げました。よろしくお願いいたします。 OS:windows10 32bit sakuraVPS:os:Linux 1:以前、さくらVPSで作ったサーバーに入りたく、サイバーダックでIP、ポート、ユーザー名、パスワード、鍵の指定で問題なくは入れましたが、Apacheをインストールしようとteratermで同様のことを記入し、RSA/DSA/ECDSA/ED25519のラジオチェックボタンを押下して上記と同様の鍵を選んだにもかかわらずタイムアウトエラーになるのはどうしてでしょうか。 2:さくらVPSへ質問しても提供してるのみで回答頂けなかった内容なのですが、そもそもさくらVPSにEclipseで作ったWEBアプリを導入するにはどのような場所にwarファイルを入れればよいのでしょうか。Apacheをインストールしてtomcatを入れれば、今現在無数にあるさくらVPSサーバ内のフォルダのどこかにwebappsなどを含むwarファイルを入れるべき場所が現れるということなのでしょうか。 3:tomcatのwebappsについてそこへEclipseからビルド後にエクスポートしたwarファイルを入れれば自動展開されるとのことなのですが、具体的にどのタイミングで自動展開されるのでしょうか。 4:上記の続きなのですが、展開されるのであれば、どのタイミングになるのでしょうか。 5:上記の続きです。展開されずに~.warというファイルがあるままの状態でもサイトは反映されて見れたのですが、そもそも展開されずともそのwebapps配下にいれた~.warファイルは反映されているものなのでしょうか。 6:Mavenを入れたことでビルド後のwarファイルエクスポートまでにすべき内容は変わりますか?いまいち利点がわからないでいます。 以上6点java開発においてずっとわだかまりがありまして、どなたかご助言よろしくお願いいたします。
回答: 関連性の少ない質問は分割した方がいいです。部分回答が得にくく、クローズしにくいからです。二つの質問があって、それぞれに完璧な回答が別々についたとき、ベストアンサーを選ぶことができなくなります。 それはさておき... 1:以前、さくらVPSで作ったサーバーに入りたく、サイバーダックでIP、ポート、ユーザー名、パスワード、鍵の指定で問題なくは入れましたが、Apacheをインストールしようとteratermで同様のことを記入し、RSA/DSA/ECDSA/ED25519のラジオチェックボタンを押下して上記と同様の鍵を選んだにもかかわらずタイムアウトエラーになるのはどうしてでしょうか。 接続する前からタイムアウトなのか、接続後にタイムアウトによって違いますが、原因はだいたい次の通りです。 * IPアドレスやポート番号が間違っている。 * ファイアウォールで閉じられている。(クライアント側の環境も注意) * sshdサービスが起動していない、または、動作不安定。 これらが問題なくても**接続する前のタイムアウト**で接続できなければ、さくらのサービスへ質問した方が良いでしょう。 2:さくらVPSへ質問しても提供してるのみで回答頂けなかった内容なのですが、そもそもさくらVPSにEclipseで作ったWEBアプリを導入するにはどのような場所にwarファイルを入れればよいのでしょうか。Apacheをインストールしてtomcatを入れれば、今現在無数にあるさくらVPSサーバ内のフォルダのどこかにwebappsなどを含むwarファイルを入れるべき場所が現れるということなのでしょうか。 Tomcatの設定によります。Tomcatでwarファイルを置く場所(webappsのパス)が設定できます。デフォルトがどこになるかはTomcatをどのようにして入れたかによって異なるため、一概に言えません。具体的に知りたい場合は、 * ApacheおよびTomcatをどのようにインストールしたのか?(バージョン番号などや実行したコマンドを含めて細かく) * インストールしたあとに何か設定したのか?(どのファイルのどの部分を変更したのか) * 追加でApacheやTomcatの設定ファイル(具体的に何が必要かは上二つの情報で変わるため、追記・修正依頼に上げられると思います) を含めて**別途**質問し直してください。上記の情報が無いとwebappsがどこかを指摘することはできません。 3:tomcatのwebappsについてそこへEclipseからビルド後にエクスポートしたwarファイルを入れれば自動展開されるとのことなのですが、具体的にどのタイミングで自動展開されるのでしょうか。 Tomcatが起動し、webappsにある**アプリケーションを読み込んだ(デプロイした)時点**でwarファイルが自動展開されます。なお、既に展開済みであれば再度展開はされず、展開済みのファイルがそのまま使用されます。 実際に展開するかしないかは設定によります。展開しない設定(unpackWARs="false"指定)にすると展開せずに動作することも可能です(作りよっては不具合が出ます)。 なお、Tomcat 7の特定バージョンは、ディレクトリの場所によっては展開されない場合があるようですのでご注意ください。 参照: Tomcat7でWARがwebappsに展開されない (Weblog on mebius.tokaichiba.jp) 4:上記の続きなのですが、展開されるのであれば、どのタイミングになるのでしょうか。 上で書いたとおりです。 5:上記の続きです。展開されずに~.warというファイルがあるままの状態でもサイトは反映されて見れたのですが、そもそも展開されずともそのwebapps配下にいれた~.warファイルは反映されているものなのでしょうか。 展開されてもwarファイルはそのまま残ります。削除されることはありません。自動展開が行われた場合は、展開されたファイルを使用します。再度展開するには展開されたファイルを削除する必要があります。 6:Mavenを入れたことでビルド後のwarファイルエクスポートまでにすべき内容は変わりますか?いまいち利点がわからないでいます。 Mavenを使ってwarファイルを作れば、Mavenで設定した依存ライブラリも一緒に入れてくれたと思います。