Свобода в Windows / Linux - PullRequest
       18

Свобода в Windows / Linux

0 голосов
/ 11 октября 2018

Я пытаюсь развернуть приложение JAVA в Liberty (я буду использовать <> в качестве заполнителя)

  1. В Windows: если я добавлю свое приложение в Eclipe с помощью команды «Добавить и удалить».Ресурс, приложение успешно работает на Liberty.В \wlp\usr\servers\<ServerName>\apps создается новый файл <MyAppName>.war.xml:

<dir sourceOnDisk="C:\<MyAppName>\<MyAppName>-source\src\main\webapp" targetInArchive="/"/>

В Windows: если я создаю в \wlp\usr\servers\<ServerName>\apps файл <MyAppName>.war.xml вручную и связываю его с каталогом <MyApp>.war:

<dir sourceOnDisk="C:\Users\<userName>\Desktop\<MyAppName>.war" targetInArchive="/"/>
, приложение работает успешно.

В Linux: я хочу сейчас развернуть ту же войну на сервере Liberty в Linux.Проблема в структуре каталогов - она ​​совершенно иная, чем в Windows.В каталоге appl есть следующие подкаталоги: appl_dropins wl_config

Где мне поместить файл <MyAppName>.war.xmlserver.xml?Почему в Linux все по-другому?

В Windows структура была для <ServerName> приложений, dropins, журналов, ресурсов, tranlog, workarea + Файловый сервер.xml

Заранее спасибо.

Ответы [ 3 ]

0 голосов
/ 12 октября 2018

Спасибо за быстрый ответ.

Я сделал, как вы сказали.Я создал файл war <MyAppNewName.war>, разархивировал его <MyAppNewName> и поместил в каталог dropings.Когда я запускаю сервер, я получаю следующее исключение:
[ERROR] CWWKZ0005E: Сервер не настроен для обработки ресурса в расположении C: \ kits \ wlp-webProfile7-18.0.0.1 \ wlp \ usr\ servers \ newTest \ dropins \ \ index.xhtml.

Для приложения в оригинальном вопросе файл .war.xml содержит

<?xml version="1.0" encoding="UTF-8"?>
<archive>
    <dir sourceOnDisk="C:\Users\userName\Desktop\MyAppName.war" targetInArchive="/"/>
    <dir sourceOnDisk="C:\MyAppName\MyAppName-source\target\classes" targetInArchive="/WEB-INF/classes"/> 
</archive>

В C: \ MyAppName \ MyAppName-source \ target \ classes есть файлы .class и война не содержит их.

Так как мне добавить классы к войне?

0 голосов
/ 13 октября 2018

Это сработало, когда я поместил .war в каталог / apps и добавил тег webApplication в файл server.xml.(а не когда я делаю войну в каталоге / dropins).

Теперь, когда я пытаюсь сделать то же самое в Linux, это не работает.Там структура каталогов также отличается.

0 голосов
/ 12 октября 2018

При развертывании непосредственно из Eclipse он по умолчанию указывает на рабочее пространство, что полезно для разработки, но не для развертывания в других средах.

У вас есть следующие параметры:

  • изменить параметры публикации в Eclipse для публикации war, сняв флажок «Запускать приложения непосредственно из рабочей области»
  • Экспортировать приложение из Eclipse с помощью «Экспорт»> «Файл War»
  • или создать упакованный сервер - щелкните правой кнопкой мыши нана вашем сервере выберите «Утилиты»> «Сервер пакетов» и затем используйте параметр «usr».

Параметр «Упакованный сервер» вполне подходит для перемещения между средами, поскольку он собирает все - application, server.xml и любые другие файлы.Вы были в папке сервера.Затем вы просто распаковываете архив на целевом хосте и запускаете сервер.

Как сказал Alasdair, нет никакой разницы в структуре каталогов между Win и Linux, поэтому либо у вас есть какой-то другой продукт в Linux, либо он был сильно настроенкем-то или каким-то инструментом.

...