Я пытаюсь зашифровать файл PGP с помощью кода Java. Я сгенерировал ключи pgp (файл .asc) для того же. Ниже приведен мой код Java:
package extract;
import org.apache.camel.CamelContext;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.impl.DefaultCamelContext;
public class PGPEncryption {
public static void main(String[] args) throws Exception {
String publicKeyFileName="abc-pub-sub.asc";
String keyUserid="abc";
String input_file_path="test.csv";
String output_file_path="/tmp/output";
camelContext.addRoutes(new RouteBuilder() {
public void configure() throws Exception {
from(input_file_path).marshal()
.pgp(publicKeyFileName, keyUserid).to(output_file_path);
}
});
camelContext.start();
Thread.sleep(5000);
camelContext.stop();
}
}
Ниже приведены файлы Jar, которые я добавил в свой путь сборки:
bcpg-jdk15on-1.56.jar
bcprov-jdk15on-1.56.jar
camel-core-2.6.0.jar
camel-crypto-2.9.5.jar
commons-logging-1.2.jar
slf4j-api-1.7.25.jar
slf4j-nop-1.7.25.jar
Но приведенный выше код выдает ошибку времени компиляции, как показано ниже:
"The method pgp(String, String) is undefined for the type DataFormatClause<ProcessorDefinition<RouteDefinition>>"
Может кто-нибудь помочь мне исправить это?
Также я попытался экспортировать мой код как Runnable Jar с ошибками времени компиляции. Но после того, как я запустил свой файл Jar, я столкнулся с приведенной ниже ошибкой:
Exception in thread "main" java.lang.NoClassDefFoundError: org/fusesource/commons/management/ManagementStrategy
Я не уверен, что здесь отсутствует какая-то базовая вещь. Может ли кто-нибудь помочь здесь? Заранее спасибо.
Ссылка по ссылке: Шифрование PGP с использованием Apache Camel