Я буду использовать команду php exec ()
который действует так же, как вы печатали
в командной строке
В вашем классе Java у вас будет метод с именем main, который выглядит следующим образом:
public static void main(String[] args) {
//If this is just a single binary string, args[0] will contain the license.
}
Если вы отправите лицензию в качестве первого аргумента, args[0]
будет вашей входящей лицензией.
Теперь, сказав это, вы можете захотеть закодировать лицензию base64 перед ее отправкой. Это позволит убедиться, что на файл лицензии не влияют наборы символов при его передаче.
Для этой цели PHP имеет функцию base64_encode()
.
Как ни странно, в Java нет встроенного декодирования Base64 (во всяком случае, официально). Кодек Apache Commons включает в себя декодер.
Опять же, предполагая, что лицензия - это первое, что было передано:
import org.apache.commons.codec.binary.Base64;
public class GiveMeANameHere {
public static void main(String[] args) {
Base64 decoder = new Base64();
byte[] license = decoder.decode(args[0]);
// Do whatever you need to with the license.
// Other strings passed in will appear as elements in args array
}
}
Не то чтобы код Java нужно было передавать jar-кодека Apache Commons в качестве пути к классу, используя либо -cp path/to/commons-codec-1.4.jar
, либо, если вы упаковали свою программу как jar, в ее файл манифеста.