【问题标题】:Writing a script in Java? [closed]用Java编写脚本? [关闭]
【发布时间】:2011-03-03 11:51:43
【问题描述】:

我在电信公司工作。我熟悉Java编程语言。但是现在我有一个任务是用 Linux 操作系统编写一个脚本。我必须编写一个脚本来从其他计算机获取数据并检查一些条件。如何使用 Java 做到这一点?

【问题讨论】:

  • 你想写一个脚本。你想使用Java吗?但是 java 不是脚本语言...你想从你的脚本中调用一个 java 应用程序吗??
  • 什么脚本 - Javascript、shell 脚本、Perl 脚本……?
  • 你到底有什么资格作为“脚本”?它与编写任何其他程序有什么不同?根据您订阅的定义,有大量定义,用 Java 编写脚本可能是不可能或微不足道的。
  • 为什么要关闭?他知道java并且想用它来编写脚本。我认为答案是使用 beanshell (www.beanshell.org) 作为解释器。

标签: java linux scripting


【解决方案1】:

从任何定义来看,Java 都不是脚本语言。

为什么不使用更好的工具来完成这项工作,例如 shell 脚本,甚至是简单的解释语言,例如 Perl、Python 或 Ruby?

只是为了给你一些激励,这里是用 Python 而非 Java 来打开和读取文件的 sn-ps。

Python:

with open(filename, 'r') as file:
    for line in file:
        print line

Java:

Scanner scanner = new Scanner(new File(fileName), encoding);
try {
  while (scanner.hasNextLine()){
    System.out.println(scanner.nextLine() + "\n");
  }
}
finally {
  scanner.close();
}

或者,如果您必须在 JVM 之上使用任何语言编写,请使用 Jython(用于 JVM 的 Python)或 Groovy 等语言。

【讨论】:

  • 或者 Groovy 或 JPython,如果他想留在 Java 基础架构中。
  • +1 抵消 -1 因为虽然它不一定回答问题,但我认为这是一个很好的澄清,属于这个问题
【解决方案2】:

如果你真的需要编写一个“脚本”并且它需要在 Java 运行时运行,我建议使用Groovy。我所说的“脚本”是指,

一种脚本语言,脚本语言 或扩展语言是一种编程 允许控制一个或 更多软件应用程序。

如果你只需要直接使用 Java,那么你只需要编写一个命令行程序。 我建议对parsing the command line arguments 使用JSAP(Java 简单参数解析器),您将需要它。无论采用哪种方式,您都需要将此 Java 代码捆绑为一个应用程序。 这是how to build an executable .jar file 上的帖子,因此您可以在任何地方部署您的应用程序,而无需设置一堆 CLASSPATH voodoo。

【讨论】:

    猜你喜欢
    • 2013-10-07
    • 1970-01-01
    • 2011-08-27
    • 2014-02-11
    • 1970-01-01
    • 1970-01-01
    • 2010-12-30
    • 2016-08-04
    • 2011-01-11
    相关资源
    最近更新 更多