0
をソナーランナーのコマンドを実行中にエラーを取得する私は以下を実行できるJavaコードを記述する必要があるポイントを述べた:Javaコードを通じて
- 「
G:\Java\Workspace
」と言う、指定したディレクトリに移動する必要があります。 - このディレクトリに到達したら、「s
onar-runner
」コマンドを実行する必要があります。
上記の点の実行がコマンドプロンプトで行われるようにコードを記述する必要があることに注意してください。
以下のエラーメッセージが表示されます。また、私が使用したコードスニペットも見てください。 誰もがこれを見て、私がここでやっている間違いを教えてもらえますか?
私は以下の例外を取得しています:
java.io.IOException: Cannot run program "sonar-runner" (in directory "G:\Java\Workspace"): CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessBuilder.start(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at com.nitish.swing.code.ExecuteSonar.run(SonarAutomation.java:67)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(Unknown Source)
at java.lang.ProcessImpl.start(Unknown Source)
... 6 more
私のコードは次のとおりです。
class ExecuteSonar extends TimerTask {
final String proj_dir = "G:\\Java\\Workspace";
final String cmd = "sonar-runner";
Date now;
@Override
public void run() {
now = new Date();
Runtime rt = Runtime.getRuntime();
System.out.println("The Time is:" + now);
try {
rt.exec(cmd, null, new File(proj_dir));
} catch (IOException e) {
e.printStackTrace();
}
}
}