Подтвердить что ты не робот

Сгладить и/или понять файлы Eclipse в динамическом веб-проекте

Файлы, находящиеся в .settings в Динамическом веб-проекте:

.settings/
|-- org.eclipse.jdt.core.prefs
|-- org.eclipse.jst.common.project.facet.core.prefs
|-- org.eclipse.jst.j2ee.ejb.annotations.xdoclet.prefs
|-- org.eclipse.wst.common.component
|-- org.eclipse.wst.common.project.facet.core.xml
|-- org.eclipse.wst.jsdt.ui.superType.container
|-- org.eclipse.wst.jsdt.ui.superType.name
`-- org.eclipse.wst.validation.prefs

Вышеупомянутый список файлов представляет собой довольно чистый новый Dynamic Web Project, за исключением того, что я использую подключаемый модуль IvyDE, но я думаю, что он влияет только на файл .classpath.

Как узнать больше об этих файлах? Мне интересно, могу ли я избавиться от любого из них, не потеряв что-то важное? Поиск этой информации на Eclipse.org был не очень легким, ссылка или объяснение были бы очень желанными.

Я пытаюсь узнать больше об этих файлах, так как я хочу как можно больше обрезать файлы Eclipse, прежде чем проверять их на управление версиями.

В случае, если это поможет, я перечисляю вышеуказанные файлы и их содержимое:

org.eclipse.jdt.core.prefs:

#Mon Jan 26 03:01:22 CET 2009
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
org.eclipse.jdt.core.compiler.compliance=1.5
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.5

org.eclipse.jst.common.project.facet.core.prefs:

#Mon Jan 26 03:01:22 CET 2009
classpath.helper/org.eclipse.jdt.launching.JRE_CONTAINER\:\:org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType\:\:java-6-sun-1.6.0.07/owners=jst.java\:5.0
eclipse.preferences.version=1

org.eclipse.jst.j2ee.ejb.annotations.xdoclet.prefs:

#Mon Jan 26 03:23:25 CET 2009
XDOCLETBUILDERACTIVE=false
XDOCLETHOME=
XDOCLETUSEGLOBAL=false
XDOCLETVERSION=1.2.1
eclipse.preferences.version=1

org.eclipse.wst.common.component:

<?xml version="1.0" encoding="UTF-8"?>
<project-modules id="moduleCoreId" project-version="1.5.0">
    <wb-module deploy-name="webcookie">
        <wb-resource deploy-path="/" source-path="/src/main/webapp"/>
        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/>
        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/test/java"/>
        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/>
        <property name="context-root" value="webcookie"/>
        <property name="java-output-path"/>
    </wb-module>
</project-modules>

org.eclipse.wst.common.project.facet.core.xml:

<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <fixed facet="jst.java"/>
  <fixed facet="jst.web"/>
  <installed facet="jst.java" version="5.0"/>
  <installed facet="jst.web" version="2.5"/>
</faceted-project>

org.eclipse.wst.jsdt.ui.superType.container:

org.eclipse.wst.jsdt.l

org.eclipse.wst.validation.prefs:

#Mon Jan 26 03:31:54 CET 2009
DELEGATES_PREFERENCE=delegateValidatorList
USER_BUILD_PREFERENCE=enabledBuildValidatorListorg.eclipse.jst.j2ee.internal.classpathdep.ClasspathDependencyValidator;org.eclipse.wst.common.componentcore.internal.ModuleCoreValidator;org.eclipse.wst.wsi.ui.internal.WSIMessageValidator;
USER_MANUAL_PREFERENCE=enaunching.baseBrowserLibrary

org.eclipse.wst.jsdt.ui.superType.name:

Window

org.eclipse.wst.validation.prefs:

#Mon Jan 26 03:31:54 CET 2009
DELEGATES_PREFERENCE=delegateValidatorList
USER_BUILD_PREFERENCE=enabledBuildValidatorListorg.eclipse.jst.j2ee.internal.classpathdep.ClasspathDependencyValidator;org.eclipse.wst.common.componentcore.internal.ModuleCoreValidator;org.eclipse.wst.wsi.ui.internal.WSIMessageValidator;
USER_MANUAL_PREFERENCE=enabledManualValidatorListorg.eclipse.jst.j2ee.internal.classpathdep.ClasspathDependencyValidator;org.eclipse.wst.common.componentcore.internal.ModuleCoreValidator;org.eclipse.wst.wsi.ui.internal.WSIMessageValidator;
USER_PREFERENCE=overrideGlobalPreferencesfalse
eclipse.preferences.version=1
override=false
suspend=false
vf.version=3
4b9b3361

Ответ 1

Посмотрим:

  • org.eclipse.jdt.core.prefs действительно важна и контролирует, как вы компилируете свой проект java.
  • org.eclipse.jst.common.project.facet.core.prefs добавляет Facet, в основном способ внедрения функциональности для проектов в Eclipse, поэтому проект может иметь один или несколько граней (т.е. это может быть проект Java и проект EJB). Смотрите здесь для иллюстрации (найдите слово "Facet" )
  • org.eclipse.jst.j2ee.ejb.annotations.xdoclet.prefs - это способ Настройка поддержки аннотаций XDoclet
  • org.eclipse.wst.common.component относится к структуре развертывания .
  • org.eclipse.wst.common.project.facet.core.xml используется для Определение целевых серверов для проектов J2EE
  • org.eclipse.wst.validation.prefs относится к Wst validation
  • org.eclipse.wst.jsdt.ui.superType.container/name как описано здесь, является конфигурацией для части JSDT:

    По умолчанию простые файлы javascript (.js) наследуют членов от объекта Global. HTML файлы, содержащиеся в статическом/динамическом веб-проекте, наследуют участников из окна объектов.
    Поэтому, если ваш контекст является простым файлом javaScript, он будет казаться, что только Window.window или Window.alert(..) действительны, поскольку ни один из членов Window не наследуется. Вы действительно хотите наследовать этот метод field + из экземпляра объекта Window.
    ,
    JSDT поддерживает настраиваемый супер тип на уровне проекта. Каждый файл .js или .html внутри проекта наследует все поля и методы из суперпроектов проектов. По умолчанию этот тип является глобальным для автономных проектов JavaScript и Window for Static/Dynamic Web Projects.
    ,
    Вы можете изменить супер тип для проекта на странице свойств JavaScript Include Path из Object Global в Object Window для достижения желаемых результатов... На странице Global Order/SuperType измените тип Super Type на Window в библиотеке ECMA.

Ответ 2

Вы должны использовать и доверять вкладке "Зависимости" в MANIFEST.MF. После работы около года с плагинами Eclipse, я бы не стал пытаться выяснить, какая зависимость плагина eclipse необходима или нет.

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

Действия MANIFEST "Найти неиспользуемые зависимости" должны выбираться каждый раз, когда вы реорганизуете свой код. Это также помогает проверять классы, затмение будет создавать, когда вы создадите полный новый плагин с нуля. Плагины eclipse не являются хорошо документированными, поэтому я буду использовать действия, которые предлагаются и не тратят так много раз, чтобы понять их все.

Если вы действительно хотите узнать, какие плагины используются, когда вы создаете плагин с нуля, вы можете удалить несколько расширений объявлений или переменных и нажать действие "Найти неиспользуемые зависимости", чтобы увидеть, какой плагин для вызова.