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

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

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

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

Gradle

Gradleは、ビルド自動化ツールです。 ソフトウェアパッケージやドキュメント、 または実際に何か他の種類のプロジェクトの構築、テスト、公開、展開などを自動化が出来ます

Q&A

1回答

1180閲覧

Gradleでgradle appRunが実行できないことについて

takumi-33

総合スコア19

Java

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

Gradle

Gradleは、ビルド自動化ツールです。 ソフトウェアパッケージやドキュメント、 または実際に何か他の種類のプロジェクトの構築、テスト、公開、展開などを自動化が出来ます

0グッド

0クリップ

投稿2021/06/21 07:25

編集2021/06/23 17:20

前提・実現したいこと

引数で入力された数字を、入力された数字と同じ値を表す画像で表示するプログラムを作成しています。
例)123が入力された場合、1を表示する画像・2を表示する画像・3を表示する画像を表示します。

入力された引数の配列の要素の数だけ画像を表示する。
表示する画像は、str.charAt(j)で配列の先頭から値を選択する。
画像を表示する<img src="images/%d.png" alt="%d">を実行する
という流れを考えているのですが、エラーが解消できずに困っています。

発生している問題・エラーメッセージ

OOPLGradleでgradle appRunのコマンドを実行すると、以下のようなエラーが表示されます。

> Task :compileJava FAILED C:\Users\19t339\Desktop\OOPLGradle\src\main\java\ImageCounter.java:54: G[: printɓK؂ȃ\bh‚܂(String,char,char) out.print("<img src=\"images/%d.png\" alt=\"%d\">", number.charAt(j), number.charAt(j)); // charAt(j)Ŕz̐擪jԖڂ̗vfo ^ \bh PrintWriter.print(boolean)͎gpł܂ (��XgƉXg̒قȂ܂) \bh PrintWriter.print(char)͎gpł܂ (��XgƉXg̒قȂ܂) \bh PrintWriter.print(int)͎gpł܂ (��XgƉXg̒قȂ܂) \bh PrintWriter.print(long)͎gpł܂ (��XgƉXg̒قȂ܂) \bh PrintWriter.print(float)͎gpł܂ (��XgƉXg̒قȂ܂) \bh PrintWriter.print(double)͎gpł܂ (��XgƉXg̒قȂ܂) \bh PrintWriter.print(char[])͎gpł܂ (��XgƉXg̒قȂ܂) \bh PrintWriter.print(String)͎gpł܂ (��XgƉXg̒قȂ܂) \bh PrintWriter.print(Object)͎gpł܂ (��XgƉXg̒قȂ܂) G[1 FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':compileJava'. > Compilation failed; see the compiler error output for details. * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0. Use '--warning-mode all' to show the individual deprecation warnings. See https://docs.gradle.org/7.0/userguide/command_line_interface.html#sec:command_line_warnings BUILD FAILED in 1s 3 actionable tasks: 1 executed, 2 up-to-date

該当のソースコード

Java

1import java.io.BufferedReader; 2import java.io.File; 3import java.io.FileNotFoundException; 4import java.io.FileReader; 5import java.io.FileWriter; 6import java.io.IOException; 7import java.io.PrintWriter; 8 9import javax.servlet.ServletException; 10import javax.servlet.annotation.WebServlet; 11import javax.servlet.http.HttpServlet; 12import javax.servlet.http.HttpServletRequest; 13import javax.servlet.http.HttpServletResponse; 14 15@WebServlet("/ImageCounter") 16public class ImageCounter extends HttpServlet { 17 @Override 18 protected void doGet(HttpServletRequest request, HttpServletResponse response) 19 throws ServletException, IOException { 20 response.setContentType("text/html; charset=UTF-8"); 21 PrintWriter out = response.getWriter(); 22 out.println("<html><head></head><body>"); 23 int i; 24 25 File f = new File(getServletContext().getRealPath("/WEB-INF/counter.txt")); 26 BufferedReader fin = null; 27 try { 28 fin = new BufferedReader(new FileReader(f)); 29 i = Integer.parseInt(fin.readLine()); 30 } catch (FileNotFoundException // ファイルがなければ 31 | NullPointerException // ファイルが空なら 32 | NumberFormatException e) { // 数でないならば 33 i = 0; // 0 に 34 } finally { 35 if (fin != null) { 36 fin.close(); // closeを忘れない 37 } 38 } 39 40 PrintWriter fout = new PrintWriter(new FileWriter(f)); 41 fout.println(++i); 42 fout.close(); // closeを忘れない 43 44 // ここから下を考える 45 46 String number = String.valueOf(i); // iをint型からstr型に変換する 47 48 int j; 49 int n = number.length(); // 文字列の長さを表す 50 51 out.printf("あなたは "); 52 53 for (j = 0; j < n; j++) { // 文字列の長さ文だけ繰り返す 54 out.print("<img src=\"images/%d.png\" alt=\"%d\">", number.charAt(j), number.charAt(j)); // charAt(j)で配列の先頭からj番目の要素を取り出す 55 } 56 57 out.print("番目の来訪者です。"); 58 out.println("</body></html>"); 59 out.close(); // closeを忘れない 60 } 61}

試したこと

ソースを見返したり、エラーの該当箇所を確認しました。
エラー内容を翻訳しました。

補足情報(FW/ツールのバージョンなど)

エディタ:VScode
コンパイラ:コマンドプロンプト

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

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

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

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

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

K_3578

2021/06/22 05:38

コードブロックを閉じる```が、閉じ括弧と同じ行にあるために表示が崩れています。 } ``` になるように修正してください。
takumi-33

2021/06/23 16:42

ご指摘ありがとうございます。
guest

回答1

0

エラーメッセージに書かれている'\u3000'というのは全角スペースのことです。
まずはこれを取り除いてみてはいかがでしょうか??

投稿2021/06/22 00:33

編集2021/06/22 00:35
hallen0225

総合スコア587

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

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

takumi-33

2021/06/22 03:56

ありがとうございます!なおしてみます。
hallen0225

2021/06/22 05:31

それ以外の部分は単純にタイプミスに見えます。 46行目:Stirng.valueOf(i); →String.valueOf(i) 49行目で宣言した変数名は"lenght"なのに53行目で呼び出しているのは"length" あと、エラーメッセージは文字化けしていない状態で提示いただいた方が確実と思います。
takumi-33

2021/06/23 16:52

コメント、ありがとうございます! エラーの数が減少しました。誤字に気を付けて、他の部分も見直してみます。 凄く悩んでいたので、本当にありがとうございます!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問