如何安装 JCommander 并在我的程序中使用它?
How to install JCommander and use it in my program?
我正在做一个项目,我想使用JCommander 来解析命令行输入。但是我不知道如何将它添加到我的机器上并使用它。
这里是GitHub page for JCommander。
那么如何在下载代码的 zip 文件后将其添加到我的机器中?
我现在没有使用任何 IDE(使用 Sublime 文本和命令行)。
即使您不想使用 IDE,您仍然可以 create a maven project。然后在 pom.xml
中添加以下依赖项
<dependency>
<groupId>com.beust</groupId>
<artifactId>jcommander</artifactId>
<version>1.48</version>
</dependency>
然后,一旦您完成了应用程序的编码,就可以在终端中执行 mvn clean install
,然后您可以使用 java -jar
选项 运行 在目标文件夹中创建的 jar。希望有所帮助。没有什么比从命令行使用 mvn 更好的了。我还会推荐 maven assembly 和 maven jar 插件。它们让您的生活更轻松。查看更多here。
我刚刚 运行 遇到了同样的问题。这是对我有用的。
从 http://mvnrepository.com/artifact/com.beust/jcommander/latest 下载 jcommander jar 文件,按照该页面上 table 上 "Artifact" 的 link 进行操作。下载的文件名为jcommander-X.XX.jar.
下载后,假设您正在使用路径 myJavaFiles/Example.java 中的文件,创建目录 myJavaFiles/lib 并将文件放在那里。
创建 minifest.txt 文件
现在你有了结构
myJavaFiles
├── Example.java
├── lib
│ └── jcommander-X.XX.jar
└── manifest.txt
5 您可以尝试将 java 文件设为 Example.java
import com.beust.jcommander.JCommander;
import com.beust.jcommander.Parameter;
class Example {
@Parameter(names={"--length", "-l"})
int length;
@Parameter(names={"--pattern", "-p"})
int pattern;
public static void main(String ... args) {
Example ex = new Example();
new JCommander();
ex.run();
}
public void run() {
System.out.printf("%d %d", length, pattern);
}
}
6 现在把它们放在一起你可以走两条路。
6.a 使用此命令生成 class 个文件 javac -cp lib/jcommanderXX.XX.jar Example.java
然后 运行 你的程序从 class 文件直接使用 java -cp lib/*:. Example -l 4 --pattern 5
或者如果您想创建一个独立的 jar 文件...
6.b 创建一个 manifest.txt 文件并在其中添加 classpath 和 lib 路径
Class-Path: lib/jcommander-X.XX.jar
Main-Class: Example
之后你可以使用这个 javac -cp lib/jcommander-X.XX.jar Example.java
进行编译
最后 运行 它与 java -cp lib/*:. Example -l 4 --pattern 5
所有这些 ^^ 都可以通过命令行完成,而无需引入 gradle 或 maven 构建,如果您只是在寻找在命令行上工作的简单方法,那么这应该可以与其他库一起使用也是。
版本更新:2017年6月最新版本为1.72。
1.48 和 1.72 之间有一些重大更新。如果你试图从最新的官方文档中学习,你会感到困惑。所以你可能想包括这个:
<dependency>
<groupId>com.beust</groupId>
<artifactId>jcommander</artifactId>
<version>1.72</version>
</dependency>
如需进一步的 maven 版本更新,您可能需要单击此 link:https://mvnrepository.com/artifact/com.beust/jcommander
我正在做一个项目,我想使用JCommander 来解析命令行输入。但是我不知道如何将它添加到我的机器上并使用它。
这里是GitHub page for JCommander。 那么如何在下载代码的 zip 文件后将其添加到我的机器中?
我现在没有使用任何 IDE(使用 Sublime 文本和命令行)。
即使您不想使用 IDE,您仍然可以 create a maven project。然后在 pom.xml
中添加以下依赖项<dependency>
<groupId>com.beust</groupId>
<artifactId>jcommander</artifactId>
<version>1.48</version>
</dependency>
然后,一旦您完成了应用程序的编码,就可以在终端中执行 mvn clean install
,然后您可以使用 java -jar
选项 运行 在目标文件夹中创建的 jar。希望有所帮助。没有什么比从命令行使用 mvn 更好的了。我还会推荐 maven assembly 和 maven jar 插件。它们让您的生活更轻松。查看更多here。
我刚刚 运行 遇到了同样的问题。这是对我有用的。
从 http://mvnrepository.com/artifact/com.beust/jcommander/latest 下载 jcommander jar 文件,按照该页面上 table 上 "Artifact" 的 link 进行操作。下载的文件名为jcommander-X.XX.jar.
下载后,假设您正在使用路径 myJavaFiles/Example.java 中的文件,创建目录 myJavaFiles/lib 并将文件放在那里。
创建 minifest.txt 文件
现在你有了结构
myJavaFiles ├── Example.java ├── lib │ └── jcommander-X.XX.jar └── manifest.txt
5 您可以尝试将 java 文件设为 Example.java
import com.beust.jcommander.JCommander;
import com.beust.jcommander.Parameter;
class Example {
@Parameter(names={"--length", "-l"})
int length;
@Parameter(names={"--pattern", "-p"})
int pattern;
public static void main(String ... args) {
Example ex = new Example();
new JCommander();
ex.run();
}
public void run() {
System.out.printf("%d %d", length, pattern);
}
}
6 现在把它们放在一起你可以走两条路。
6.a 使用此命令生成 class 个文件 javac -cp lib/jcommanderXX.XX.jar Example.java
然后 运行 你的程序从 class 文件直接使用 java -cp lib/*:. Example -l 4 --pattern 5
或者如果您想创建一个独立的 jar 文件...
6.b 创建一个 manifest.txt 文件并在其中添加 classpath 和 lib 路径
Class-Path: lib/jcommander-X.XX.jar
Main-Class: Example
之后你可以使用这个 javac -cp lib/jcommander-X.XX.jar Example.java
最后 运行 它与 java -cp lib/*:. Example -l 4 --pattern 5
所有这些 ^^ 都可以通过命令行完成,而无需引入 gradle 或 maven 构建,如果您只是在寻找在命令行上工作的简单方法,那么这应该可以与其他库一起使用也是。
版本更新:2017年6月最新版本为1.72。
1.48 和 1.72 之间有一些重大更新。如果你试图从最新的官方文档中学习,你会感到困惑。所以你可能想包括这个:
<dependency>
<groupId>com.beust</groupId>
<artifactId>jcommander</artifactId>
<version>1.72</version>
</dependency>
如需进一步的 maven 版本更新,您可能需要单击此 link:https://mvnrepository.com/artifact/com.beust/jcommander