[ https://issues.apache.org/jira/browse/FLINK-1347?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14264364#comment-14264364 ]
Alexander Alexandrov commented on FLINK-1347: --------------------------------------------- SCOPT has a lot of nice features, but requires the client code to be written in Scala. This might be confusing or unpracticle if the the CLI clients are written in Java. On the other hand, Commons CLI is quite old and lacks some features like type safety, extensibility, sub-commands (e.g. jobmanager run). In my experience (I've worked with SCOPT, Commons CLI and a couple of other libraries), the best (Java) library out there is [argparse4j|http://argparse4j.sourceforge.net], a Java port of the Python [argparse|https://docs.python.org/3/library/argparse.html] library. If you can highlight the properties / parameters which are bound to CLI parameters / arguments and define the corresponding domains, I can replace the SCOPT / Commons CLI code with Argparse4j, otherwise I suggest to stick with Commons CLI. > Consolidate the CLI parser libraries > ------------------------------------ > > Key: FLINK-1347 > URL: https://issues.apache.org/jira/browse/FLINK-1347 > Project: Flink > Issue Type: Improvement > Components: JobManager > Affects Versions: 0.9 > Reporter: Stephan Ewen > Priority: Minor > > We currently have multiple command line parser libraries. > - Apache Commons CLI (formerly used by all components, now used by the > command line client and the web client) > - SCOPT (used by the TaskManager and JobManager) > I think it makes sense to consolidate in libraries, there is no need for two > different versions. -- This message was sent by Atlassian JIRA (v6.3.4#6332)