Где находится каталог «работа» для экземпляра Tomcat, запущенного в Eclipse? - PullRequest
32 голосов
/ 18 апреля 2009

В Eclipse вы можете настроить несколько серверов для работы внутри IDE, включая Tomcat. В зависимости от конфигурации Tomcat, в какой-то момент жизненного цикла веб-приложения ваши JSP-файлы будут скомпилированы в сервлеты. Эти новые файлы сервлета .class хранятся в каталоге %TOMCAT_HOME%/work вместе с промежуточным файлом .java , созданным из JSP. Этот файл .java очень полезен, когда ваши JSP генерируют исключения и указывают номер строки, соответствующий .java , а не .jsp

Обновление: В моей среде (Windows) оно находится здесь:

C: / Documents and Settings / % USER% / рабочее пространство / .metadata / .plugins / org.eclipse.wst.server.core / tmp0 / work

Возможно, для более полного ответа кто-нибудь может опубликовать местоположение для * nix-окружений.

Ответы [ 6 ]

50 голосов
/ 18 апреля 2009

Вы найдете его в

projectworkspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0

Это место по умолчанию, где Eclipse 3.4 публикует проект. Однако это можно изменить, изменив настройки в представлении «Сервер».

16 голосов
/ 19 апреля 2009

Перейдите в окно «Серверы» -> дважды щелкните на своем экземпляре tomcat -> Клик «Открыть конфигурацию запуска» -> перейдите на вкладку «Аргументы».

Найдите определение переменной следующим образом:

-Dcatalina.base="/Users/dirtyaffairs/Documents/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0"
15 голосов
/ 18 апреля 2009

Самый простой способ, скорее всего, спросить скомпилированную страницу JSP об источнике байтового кода.

С http://www.exampledepot.com/egs/java.lang/ClassOrigin.html:

// Get the location of this class
Class cls = this.getClass();
ProtectionDomain pDomain = cls.getProtectionDomain();
CodeSource cSource = pDomain.getCodeSource();
URL loc = cSource.getLocation();  // file:/c:/almanac14/examples/

Надеюсь, это поможет. Что ты хочешь делать?

3 голосов
/ 09 марта 2016
  1. В Windows самый простой способ перейти к месту развертывания Tomcat в Eclipse - просто щелкнуть правой кнопкой мыши экземпляр Tomcat в представлении Servers и нажать « Просмотреть расположение развертывания ..."

    Вы должны увидеть, как Eclipse аккуратно открывает проводник Windows, и вы попадаете в точное местоположение. В моем случае мне нужно:

    C:\eclipse4.3.2-jee-kepler-SR2-win32\workspaces\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps

    Оттуда вы можете легко перейти к «рабочему» каталогу, как показано ниже.

    Если вы будете следовать этому, вам никогда не придется запоминать местоположение!

    Eclipse Servers View:

    enter image description here

    Windows Explorer открывает:

    enter image description here

    Проводник Windows (нажмите на адресную строку, чтобы открыть полный путь):

    enter image description here

  2. В Amazon EC2 Linux (однако это не имеет ничего общего с Eclipse), каталог Tomcat work находится в /var/cache/tomcat7/work

    [ec2-user@ip-172-31-xx-xx ~]$ uname -a
    Linux ip-172-31-xx-xx 4.1.10-17.31.amzn1.x86_64 #1 SMP Sat Oct 24 01:31:37 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
    
    [root@ip-172-31-xx-xx] /usr/share/tomcat7 $ ls -l
    total 4
    drwxr-xr-x 2 root root   4096 Jan  5 15:18 bin
    lrwxrwxrwx 1 root tomcat   12 Jan  5 15:18 conf -> /etc/tomcat7
    lrwxrwxrwx 1 root tomcat   23 Jan  5 15:18 lib -> /usr/share/java/tomcat7
    lrwxrwxrwx 1 root tomcat   16 Jan  5 15:18 logs -> /var/log/tomcat7
    lrwxrwxrwx 1 root tomcat   23 Jan  5 15:18 temp -> /var/cache/tomcat7/temp
    lrwxrwxrwx 1 root tomcat   24 Jan  5 15:18 webapps -> /var/lib/tomcat7/webapps
    lrwxrwxrwx 1 root tomcat   23 Jan  5 15:18 work -> /var/cache/tomcat7/work
    
    [root@ip-172-31-xx-xx] /var/cache/tomcat7/work/Catalina/localhost/init/org/apache/jsp $ ls -la
    total 180
    drwxr-xr-x 2 tomcat tomcat  4096 Jan  6 06:37 .
    drwxr-xr-x 3 tomcat tomcat  4096 Jan  6 06:37 ..
    -rw-r--r-- 1 tomcat tomcat 54172 Aug 17  2012 index_jsp.class
    -rw-r--r-- 1 tomcat tomcat  2106 Jan  6 06:37 index_jsp$FileComp.class
    -rw-r--r-- 1 tomcat tomcat  1034 Jan  6 06:37 index_jsp$FileInfo.class
    -rw-r--r-- 1 tomcat tomcat  6460 Jan  6 06:37 index_jsp$HttpMultiPartParser.class
    -rw-r--r-- 1 tomcat tomcat 89445 Aug 17  2012 index_jsp.java
    -rw-r--r-- 1 tomcat tomcat  2210 Jan  6 06:37 index_jsp$UplInfo.class
    -rw-r--r-- 1 tomcat tomcat  1208 Jan  6 06:37 index_jsp$UploadMonitor.class
    -rw-r--r-- 1 tomcat tomcat  1184 Jan  6 06:37 index_jsp$Writer2Stream.class
    
1 голос
/ 18 апреля 2009

Вы можете изменить его, установив параметр scratchDir в конфигурации web.xml вашего сервера (в проекте Servers, а не в вашем приложении web.xml!).

0 голосов
/ 18 апреля 2009

Я предполагаю, что это будет то же место относительно вашего рабочего пространства.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...