• Home
Name Date Size #Lines LOC

..--

doc/03-May-2024-5,4934,141

gradle/03-May-2024-7159

kobalt/03-May-2024-6151

lib/03-May-2024-

src/03-May-2024-10,2726,158

.gitignoreD03-May-2024227 2422

.travis.ymlD03-May-2024128 127

Android.bpD03-May-20242.5 KiB7770

CHANGELOG.mdD03-May-20248.1 KiB210160

LICENSED03-May-202411.1 KiB204169

METADATAD03-May-2024401 2019

MODULE_LICENSE_APACHE2D03-May-20240

OWNERSD03-May-202448 32

README.markdownD03-May-20241.3 KiB5135

build.gradleD03-May-2024712 4536

gradlewD03-May-20245 KiB165122

kobaltwD03-May-202482 31

license.txtD03-May-202411.1 KiB204169

misc.xmlD03-May-2024250 44

notice.mdD03-May-2024108 63

releaseD03-May-2024292 96

uploadD03-May-2024192 63

README.markdown

1JCommander
2==========
3
4This is an annotation based parameter parsing framework for Java 8.
5
6Here is a quick example:
7
8```java
9public class JCommanderTest {
10    @Parameter
11    public List<String> parameters = Lists.newArrayList();
12
13    @Parameter(names = { "-log", "-verbose" }, description = "Level of verbosity")
14    public Integer verbose = 1;
15
16    @Parameter(names = "-groups", description = "Comma-separated list of group names to be run")
17    public String groups;
18
19    @Parameter(names = "-debug", description = "Debug mode")
20    public boolean debug = false;
21
22    @DynamicParameter(names = "-D", description = "Dynamic parameters go here")
23    public Map<String, String> dynamicParams = new HashMap<String, String>();
24
25}
26```
27
28and how you use it:
29
30```java
31JCommanderTest jct = new JCommanderTest();
32String[] argv = { "-log", "2", "-groups", "unit1,unit2,unit3",
33                    "-debug", "-Doption=value", "a", "b", "c" };
34new JCommander(jct, argv);
35
36Assert.assertEquals(2, jct.verbose.intValue());
37Assert.assertEquals("unit1,unit2,unit3", jct.groups);
38Assert.assertEquals(true, jct.debug);
39Assert.assertEquals("value", jct.dynamicParams.get("option"));
40Assert.assertEquals(Arrays.asList("a", "b", "c"), jct.parameters);
41```
42
43The full doc is available at [http://jcommander.org](http://jcommander.org).
44
45## Building JCommander
46
47```
48./kobaltw assemble
49```
50
51