2014-11-14 7 views
3

Я пытаюсь запустить Glassfish 4.1 в Intellij IDEA 13.1.4. Я установил базовые настройки в окне «Запуск/отладка конфигурации» - выбранный сервер приложений, jvm, поместил 2 артефактов для развертывания, оставил настройки запуска/подключения по умолчанию. Когда я пытаюсь запустить его, выдается исключение. Вот полный трассировки стека:IDEA не удалось запустить локальный сервер окуней

/home/glassfish/glassfish/bin/asadmin start-domain domain1 

    Detected server admin port: 4848 
    Detected server http port: 8080 
[2014-11-14 03:09:49,839] Artifact ss-ear:ear: Server is no connected.Deploy  is not available. 
[2014-11-14 03:09:49,839] Artifact ss-ear:ear exploded: Server is not connected. Deploy is not available. 

java.nio.file.AccessDeniedException: /home/glassfish/glassfish/domains/domain1/logs/server.log.lck 
at sun.nio.fs.UnixException.translateToIOException(UnixException.java:84) 
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102) 
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107) 
at sun.nio.fs.UnixFileSystemProvider.newFileChannel(UnixFileSystemProvider.java:177) 
at java.nio.channels.FileChannel.open(FileChannel.java:287) 
at java.nio.channels.FileChannel.open(FileChannel.java:335) 
at java.util.logging.FileHandler.openFiles(FileHandler.java:438) 
at java.util.logging.FileHandler.<init>(FileHandler.java:318) 
at com.sun.enterprise.admin.launcher.GFLauncherLogger.addLogFileHandler(GFLauncherLogger.java:99) 
at com.sun.enterprise.admin.launcher.GFLauncher.setup(GFLauncher.java:192) 
at com.sun.enterprise.admin.servermgmt.cli.StartDomainCommand.createLauncher(StartDomainCommand.java:228) 
at com.sun.enterprise.admin.servermgmt.cli.StartDomainCommand.executeCommand(StartDomainCommand.java:124) 
at com.sun.enterprise.admin.cli.CLICommand.execute(CLICommand.java:322) 
at com.sun.enterprise.admin.cli.AdminMain.executeCommand(AdminMain.java:366) 
at com.sun.enterprise.admin.cli.AdminMain.doMain(AdminMain.java:300) 
at org.glassfish.admin.cli.AsadminMain.main(AsadminMain.java:56) 

Waiting for domain1 to start .Error starting domain domain1. 
The server exited prematurely with exit code 1. 
Command start-domain failed. 
Before it died, it produced the following output: 

Listening for transport dt_socket at address: 9009 
Launching GlassFish on Felix platform 
Exception in thread "main" java.lang.RuntimeException: the domain directory is not writable. 
at com.sun.enterprise.glassfish.bootstrap.MainHelper.verifyDomainRoot(MainHelper.java:246) 
at com.sun.enterprise.glassfish.bootstrap.MainHelper.findInstanceRoot(MainHelper.java:349) 
at com.sun.enterprise.glassfish.bootstrap.GlassFishMain.main(GlassFishMain.java:78) 
at com.sun.enterprise.glassfish.bootstrap.ASMain.main(ASMain.java:54) 

Я использую Ubuntu OS 14.04 LTS, Java-1.7.0-OpenJDK-amd64. Glassfish установлен в/home/glassfish, asadmin script имеет 777 разрешений. Сервер запускается, когда я запускаю его с терминала, но не из IDE.

Пожалуйста, помогите, это сойдет с ума!

ответ

0

Вы пытались запустить IntelliJ с разрешения sudo и запустить сервер внутри ide?

+0

Спасибо за ответ на мой вопрос, ваше предложение, в частности, решило мою проблему. Но теперь у меня есть другой вопрос, связанный с распределением памяти, следующий запуск дает мне следующее: «OpenJDK 64-разрядный сервер VM-предупреждение: INFO: os :: commit_memory (0x00000000bff80000, 716177408, 0) не удалось: ошибка = 'Невозможно выделить память' (ERRNO = 12) «. Должен ли я изменить настройки jdk на сервере? – Matvey

0

Сервер запускается, когда я запускаю его с терминала, но не из IDE.

Проверьте, под какой версией JVM работает IntelliJ IDEA. Кажется, что ваш сервер GlassFish поставляется с классами, которые были скомпилированы под другой версией (новее).

+0

Мой проект SDK - это java 1.7.0_65, это то, о чем вы говорите? – Matvey

1

открыть CMD запуститься как администратор, а затем запустить домен в стеклянном поле. так что домен начнется.

0

См. Это «java.nio.file.AccessDeniedException», в котором говорится все. Укажите разрешения для папки gassfish.

sudo chmod -R 777 /wherever-the-folder-is/glassfish-folder 
Смежные вопросы