我为简单的Java下载HTTP服务器设置了以下项目文件夹:
import java.util.*;
import java.math.*;
public class Problem15 {
public static void main (String[] args) {
int length = getLength();
int width = length;
BigInteger Lfact = new BigInteger("fact(length)");
BigInteger Wfact = new BigInteger("fact(width)");
BigInteger LWfact = new BigInteger("fact(Length+width)");
BigInteger Denom = Lfact.multiply(Wfact);
System.out.println("For grid size "+length+"X"+width+" the total no of routes are "+LWfact.divide(Denom));
}
private static int getLength() {
System.out.print("Please enter grid length - ");
Scanner inp1 = new Scanner (System.in);
int length = inp1.nextInt();
inp1.close();
return length;
}
public BigInteger fact(int num) {
BigInteger result = new BigInteger("1");
for(int i = num; i > 1; i--) {
result = result.multiply(BigInteger.valueOf(i));
}
return result;
}
}
我将XNIO和JBOSS-Logging下载到了lib中。我确保通过让Gradle下载依赖项来下载正确的发行版。但我试图通过手动运行来了解更多内容,因此我将jar文件复制到lib文件夹中。
我的- HelloWorldServer.java
- build
- lib
看起来像这样:
HelloWorldServer.java
然后我转到我的文件夹根目录并运行以下命令:
import io.undertow.Undertow;
import io.undertow.util.*;
public class HelloWorldServer {
public static void main(final String[] args) {
Undertow server = Undertow.builder()
.addHttpListener(8080, "localhost")
.setHandler(exchange -> {
exchange.getResponseHeaders().put(Headers.CONTENT_TYPE, "text/plain");
exchange.getResponseSender().send("Hello World");
}).build();
server.start();
}
}
现在我已经编译了应用程序,如何从终端运行它?
编辑:我的javac -cp "lib/*" -d build HelloWorldServer.java
目录的内容如下:
lib
答案 0 :(得分:0)
由于使用-d标志,你要求java编译器在build目录中生成类文件。所以你需要像这样运行:
java -cp "build/:lib/*" HelloWorldServer