2013-09-20 3 views
3

Я пытаюсь настроить ssl с помощью плагина с плавающей точкой без успеха. Также мне не удалось найти документацию, связанную с этим. Есть ли кто-нибудь, кто может указать мне в правильном направлении?Конфигурирование плагинов для градиента для использования ssl

EDIT

В рамках поиска я обнаружил следующую пробу

jettyRun { 
    def httpConnector = new org.mortbay.jetty.nio.SelectChannelConnector(); 
    httpConnector.port = 8080 
    def httpsConnector = new org.mortbay.jetty.security.SslSocketConnector(); 
    httpsConnector.port = 8443 
    httpsConnector.keystore = "keystore.jks" 
    httpsConnector.keyPassword = "keystorepwd" 
    httpsConnector.truststore = "cacerts" 
    httpsConnector.trustPassword = "cacertspwd" 
    connectors [httpConnector, httpsConnector] 
} 

Но после этого образца, оставил меня со следующей проблемой ...

unable to resolve class org.mortbay.jetty.nio.SelectChannelConnector 
unable to resolve class org.mortbay.jetty.security.SslSocketConnector 

Должен ли я добавить некоторую зависимость в процессе сборки. Я рассматривал файлы jar как часть моего распределения градиентов, и все кажется правильным.

EDIT 2

Я исправил проблему с путем к классам, добавив следующий

buildscript { 
    repositories { 
     mavenCentral() 
    } 

    dependencies { 
     classpath 'org.mortbay.jetty:jetty:6.1.25' 
    } 
} 

Но теперь Gradle жалобы со следующим сообщением:

Cannot cast object '[email protected]:8080' with class 'org.mortbay.jetty.nio.SelectChannelConnector' to class 'org.mortbay.jetty.Connector' 

Если кто-то, кажется, нашли ответ, я бы очень признателен!

ответ

1

Я нашел решение вместо импорта банки в качестве зависимости. Я просто загружаю класс в загрузчик классов для задачи jettyRun. Что-то вроде следующего

httpConnector = jettyRun.class.classLoader.loadClass(....).newInstance() 
0

В настоящий момент плагин Jetty не предоставляет никаких функций SSL. Если вы не привязаны к Jetty, вместо этого вы можете использовать Tomcat plugin, что позволяет настроить SSL.

+0

Я нашел следующую ссылку на весну [форум] (http://git.springsource.org/spring-security/spring-security/blobs/bbcc611af5899f6898536fdd1e2267c14e07d589/samples/cas/cas.gradle). Я пробовал этот подход, но проблема, с которой я столкнулся сейчас, заключается в том, что град жалуется на следующее сообщение: «Не удалось разрешить класс org.mortbay.jetty.security.SslSocketConnector» –

+0

Да, я имел в виду не-из- поле SSL. Проверьте связанные файлы JAR Jetty в дистрибутиве Gradle, чтобы узнать, действительно ли класс. Возможно, пакет для класса Jetty изменился между версиями. –

+0

Я уже проверил это, и я уверен, что они там. Я не уверен, что если мне нужно сделать что-то еще, classpath или какую-то связанную конфигурацию –

4

Вы можете значительно упростить SSL/HTTPS часть ваших Gradle сценариев с помощью Gretty gradle plugin вместо Jetty плагин.

Он поддерживает HTTPS с инструкцией однострочного:

gretty.httpsEnabled = true 

Он также предоставляет много других полезных функций, все документировано в Gretty documentation site.

Раскрытие информации: Я являюсь автором плагина Gretty.

Смежные вопросы