Я пытаюсь подключить экземпляр AWS Windows через код Java с CIFS или WinRM, и мне не нужно использовать протокол SMB. Я не уверен, возможно ли это или нет .
На экземпляре работает служба WinRM, и для тестирования я разрешил весь трафик как входящий к экземпляру.
Я хочу скопировать некоторый файл в этом экземпляре, а также хочу запустить некоторый bash-скрипт, используя этот код Java.
Я попытался xebialabs / overthere с CIFS,
Следуя кодовой базе, которую я пытался достичь, но столкнулся с некоторой проблемой с этим (все свойства хоста есть)
ConnectionOptions options = new ConnectionOptions();
options.set(ConnectionOptions.OPERATING_SYSTEM, OperatingSystemFamily.WINDOWS);
options.set(CifsConnectionBuilder.CONNECTION_TYPE, CifsConnectionType.WINRM_INTERNAL);
options.set(CifsConnectionBuilder.WINRM_TIMEMOUT, "PT172800.000S");
options.set(ConnectionOptions.CONNECTION_TIMEOUT_MILLIS, 900000);
options.set(ConnectionOptions.SOCKET_TIMEOUT_MILLIS, 900000);
options.set(CifsConnectionBuilder.WINRM_ENABLE_HTTPS, false);
options.set(CIFS_PORT, CIFS_PORT_DEFAULT);
options.set(ConnectionOptions.PROTOCOL, CIFS_PROTOCOL);
// Host Properties
options.set(ConnectionOptions.ADDRESS, host);
options.set(ConnectionOptions.USERNAME, user);
options.set(ConnectionOptions.PASSWORD, password);
AddressPortMapper mapper = DefaultAddressPortMapper.INSTANCE;
OverthereFile workingDirectory = null;
WinrsConnection connection = new WinrsConnection(options, mapper, workingDirectory);
connection.connect();
Ошибка:
Исключение в потоке "main "java.lang.IllegalArgumentException: Невозможно создать соединение smb: winrm_native с прокси-сервером winrs, который не работает под управлением Windows в com.xebialabs.overthere.winrs.WinrsConnection.connect (WinrsConnection.java:89) в ot.WinRmUtils.getWinRConConv.WinRmUtils.java:76) в ot.WinRmUtils.getNewWinRMConnection (WinRmUtils.java:89) в ot.OtPOC.main (OtPOC.java:16)
Я также пытался cloudsoft /winrm4j Но это тоже не работает.