从php调用jar文件中的方法

时间:2015-05-31 18:19:48

标签: java php jar executable-jar

我正在从php函数运行一个jar文件。

exec("java -jar hel.jar", $outputArray);

但我想调用jar文件中的特定方法并将参数发送到这些方法并获得最终输出。

示例: -

public class hel {

    public static void main(String[] args) {
         hel he=new hel();
        he.getName("john");
    }

   public String getName(String name){
        System.out.println(name);
        return name;

    }

}

我想将一个String值作为参数发送给方法" getName"并获得最终输出。有什么建议?

1 个答案:

答案 0 :(得分:1)

您只能从主类调用main方法。来自java手册:

  

-jar filename

     

执行封装在JAR文件中的程序。文件名      argument是包含a的清单的JAR文件的名称      main-Class形式的行:用于定义类的classname      用作的public static void main(String [] args)方法      你的申请的起点。

因此,要使其工作,您必须在jar中设置清单并编写主类来调用所需的函数。完成后,将任何参数附加到exec调用,它应该有效。

您必须在jar的“META-INF”文件夹中创建一个清单文件“MANIFEST.MF”,其中包含以下内容:

  

清单 - 版本:1.0

     

Main-Class:This.Is.Your.Package.hel

你可以像这样向exec添加参数:

exec("java -jar hel.jar first_argument second_argument", $outputArray);

如果您的参数需要空格,请添加引号。您的参数将显示在String[] args数组中。