質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
JAR

JAR(又はJava ARchive)はコンパイルされた複数のJavaバイトコード及び関連ファイルのリソースを一つのファイルに統合したものです。JARファイルはZIPファイルのフォーマットで構築されています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

URL

URL(ユニフォームリソースロケータ)とは、インターネット上のリソース(Webページや電子メールの宛先等)を特定するための形式的な記号の並びの事を言う。

UTF-8

UTF-8は8ビット符号単位の文字符号化形式及び文字符号化スキームです。データ交換方式、ファイル形式としては、一般的にUTF-8が使われる傾向があります。

Q&A

解決済

2回答

2251閲覧

WindowsでEclipseで実行できるコードがjarで実行できない

退会済みユーザー

退会済みユーザー

総合スコア0

JAR

JAR(又はJava ARchive)はコンパイルされた複数のJavaバイトコード及び関連ファイルのリソースを一つのファイルに統合したものです。JARファイルはZIPファイルのフォーマットで構築されています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

URL

URL(ユニフォームリソースロケータ)とは、インターネット上のリソース(Webページや電子メールの宛先等)を特定するための形式的な記号の並びの事を言う。

UTF-8

UTF-8は8ビット符号単位の文字符号化形式及び文字符号化スキームです。データ交換方式、ファイル形式としては、一般的にUTF-8が使われる傾向があります。

0グッド

0クリップ

投稿2015/10/22 14:58

編集2015/10/22 15:00

###前提・実現したいこと
jar をMS-DOS上で実行させたい。
###発生している問題・エラーメッセージ
Eclipse上ではresponseがcode 200で返っているのに,MS-DOSのプロンプトで実行すると,IOExceptionが出ます。
また,リクエストURIが一部文字化けするという現象が起きています。(Eclipse上では,エラーコードが返ってきても文字化けしない)
文字コード周りのバグがある気がするのですが,何が原因か解る方いたら教えていただきたいです。

at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown Source)
at apitest.getResponse(apitest.java:269)
at apitest.apiMain(apitest.java:179)
at apitest.main(apitest.java:48)
javax.script.ScriptException: sun.org.mozilla.javascript.internal.EvaluatorException: syntax error (<Unknown source>#1) in <Unknown source> at line number 1
at com.sun.script.javascript.RhinoScriptEngine.eval(Unknown Source)
at com.sun.script.javascript.RhinoScriptEngine.eval(Unknown Source)
at javax.script.AbstractScriptEngine.eval(Unknown Source)
at Jsonsample.getJsonToMap(Jsonsample.java:28)
at apitest.apiMain(apitest.java:180)
at apitest.main(apitest.java:48)
Caused by: sun.org.mozilla.javascript.internal.EvaluatorException: syntax error (<Unknown source>#1)
at sun.org.mozilla.javascript.internal.DefaultErrorReporter.runtimeError(Unknown Source)
at sun.org.mozilla.javascript.internal.DefaultErrorReporter.error(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.addError(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.addError(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.reportError(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.reportError(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.reportError(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.primaryExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.memberExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.unaryExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.mulExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.addExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.shiftExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.relExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.eqExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.bitAndExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.bitXorExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.bitOrExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.andExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.orExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.condExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.assignExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.expr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.parenExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.primaryExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.memberExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.unaryExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.mulExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.addExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.shiftExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.relExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.eqExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.bitAndExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.bitXorExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.bitOrExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.andExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.orExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.condExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.assignExpr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.expr(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.statementHelper(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.statement(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.parse(Unknown Source)
at sun.org.mozilla.javascript.internal.Parser.parse(Unknown Source)
at sun.org.mozilla.javascript.internal.Context.compileImpl(Unknown Source)
at sun.org.mozilla.javascript.internal.Context.compileReader(Unknown Source)
at sun.org.mozilla.javascript.internal.Context.compileReader(Unknown Source)
at sun.org.mozilla.javascript.internal.Context.evaluateReader(Unknown Source)
###ソースコード

url=new URL(https_url+"?app="+app+"&fields[0]="+key_field_1+"&fields[1]=key_field_2&query="+URLEncoder.encode(key_field1+" = "+uprec.get(j)+" limit 500 offset "+dst_offset,"UTF-8"));

key_field_i には,外部ファイルからUTF-8の文字列を読み込んでいます。

###補足情報(言語/FW/ツール等のバージョンなど)
java6で開発しています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

  1. key_field_i を読み込む際に文字コードを指定し忘れていて -Dfile.encodingの差で文字化けしている
  2. URLEncoder.encodeの時点で使用するJDKの種類が異なり文字化けしている(~などの特殊文字がある場合)
  3. ほかの変数が文字化けしている
  4. それ以外

のどれかだと思います(たぶん1?)

1の場合は、-Dfile.encoding=UTF-8にするか、URLEncoder.encodeと同様、ファイルから文字列にするところでもUTF-8を使用することで解決するかと思います。

投稿2015/10/22 15:30

mizuki-yamato

総合スコア12

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2015/10/22 16:13 編集

MS-DOSのjvmはデフォルトでUTF-8ではなくMS932で実行されるようになっているのですね。勉強になりました。ありがとうございました! 対処法としては,1のみで解決しました!
guest

0

ベストアンサー

MS-DOS(コマンドプロンプト)で実行する際、システムプロパティー-Dfile.encoding=UTF-8を指定していますか?

Windowsの場合は、デフォルトエンコーディングがMS932なので、UTF-8を明示する必要があります。
EclipseではUTF-8で実行するように設定されているので上手くいくのではないかと推測します。


(追記)

下記リンクに記載されている方法を使うか、プログラム側で出力の文字コードをオプションで変えられるようにするか、かな?

コマンドプロンプトの文字コードを変える方法 - ぺんたん info
http://pentan.info/program/cmd_chcp.html

投稿2015/10/22 15:12

編集2015/10/22 16:15
argius

総合スコア9388

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2015/10/22 16:06

ありがとうございます!無事実行できました! ちなみにですがログの出力は正常に出来たのですが,標準出力が文字化けしてしまうのですが,それも解決できるでしょうか?
argius

2015/10/22 16:16

回答欄に追記しました。 あとはプログラムの内容によるかも知れません。
退会済みユーザー

退会済みユーザー

2015/10/22 16:47

ありがとうございます。DOSの方の設定は変えてみたのですが,環境依存なのであまりよくなさそうです。出力の際にEncodeし直すのがベストなんですかね。自分でも調べてみます。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問