java - 试图了解如何创建一个打开终端并接受参数的 jar 文件
问题描述
我完成了一个程序的创建,但我被告知我的程序必须是一个 Java 应用程序,它以文件名作为命令行参数。”我知道我可以在终端中使用 jar 命令,但我不明白你是如何打开的终端并以文件名作为参数。我想知道是否有人可以解释这样做需要什么代码。非常感谢。
我尝试在终端中使用“jar cvf findOptimalTransport.jar”行创建一个基本的 jar 文件。但是jar文件没有打开,我认为这是因为当前的实现在代码中使用扫描仪输入用户输入并通过终端打印。但是,这不起作用,因为没有使用此命令打开终端窗口。
解决方案
它不必是jar文件。运行应用程序时,可以从命令行输入命令行参数。
让我举个例子,关于它是如何工作的。假设您有以下简单的 Java 应用程序:
public class MyApplication{
public static void main(String[] arguments){
System.out.println("Hello World!");
}
}
那public static void main()
是一种方法;更具体地说,应用程序的主要方法是编译和运行时执行的方法。
要编译然后运行它,请在命令行/终端中键入:
javac MyApplication.java //this will compile it
java MyApplication //this will run the main method of MyApplication
但是 main 方法中的那个参数是什么?是什么String[] arguments
?
当你运行你的程序时,无论你在应用程序名称后面键入什么,都是一个参数,类型为String,它存储在 String 数组中String[] arguments
(或者最常见的String[] args
)。
这意味着,如果您像这样执行您的应用程序:
java MyApplication some_file.txt // Run application with one arg.
您可以像这样访问该参数:
public class MyApplication{
public static void main(String[] arguments){
System.out.println("Hello World!");
System.out.println("You entered: " + arguments[0]);
}
}
输出:
你好世界!
您输入了:some_file.txt
注意:要运行 jar 文件,您需要导航到 jar 文件所在的文件夹,然后在命令行中输入以下命令运行它:
java -jar <jarname>.jar
推荐阅读
- c# - 使用命令在 .NET 项目中添加外部 DLL 文件作为“参考”
- c# - 使用 libgit2sharp(或其他 c# 库)镜像 repo
- ngrx - 带有 NGRX 的 Angular 组件库项目?
- python - 如何修复“str”对象没有“加密”属性?
- c - 队列返回的指针不能在没有分段错误的情况下被取消引用
- jpa - 使用 JPQL 左连接元素集合
- c# - 为什么我的“使用”语句之外的代码无法访问?
- python - 在尝试安装 Fiona 时使用 GDAL_CONFIG 环境变量错误提供 gdal-config 的路径
- c - 函数 ptr 分配类型转换
- azure - 使用票号触发构建