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

Нет встроенной инструкции стилей для файла: ошибка с использованием логина

У меня есть следующая конфигурация logback.xml:

<configuration>
  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <!-- encoders are assigned the type
         ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
    <encoder>
      <pattern>%-4relative [%thread] %-5level %logger{35} - %msg %n</pattern>
    </encoder>
  </appender>

    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>logFile.log</file>
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
      <!-- daily rollover -->
      <fileNamePattern>logFile.%d{yyyy-MM-dd}.log</fileNamePattern>

      <!-- keep 30 days' worth of history -->
      <maxHistory>30</maxHistory>
    </rollingPolicy>

    <encoder>
      <pattern>%-4relative [%thread] %highlight(%-5level) %cyan(%logger{35}) - %msg%n</pattern>
    </encoder>
  </appender> 

  <root level="DEBUG">
    <appender-ref ref="STDOUT" />
    <appender-ref ref="FILE" /> 

  </root>
</configuration>

Если я отредактирую файл конфигурации в eclipse (juno), я получаю следующую ошибку:

11:02:54,114 INFO  [main] Main  - javax.xml.transform.TransformerFactory=null
11:02:54,115 INFO  [main] Main  - java.endorsed.dirs=C:\Program Files\Java\jre7\lib\endorsed
11:02:54,117 INFO  [main] Main  - launchFile: C:\Users\roberth\Programming_Projects\eclipse\.metadata\.plugins\org.eclipse.wst.xsl.jaxp.launching\launch\launch.xml
11:02:54,145 FATAL [main] Main  - No embedded stylesheet instruction for file: file:/C:/Users/roberth/Programming_Projects/eclipse/javaport/src/logback.xml
org.eclipse.wst.xsl.jaxp.debug.invoker.TransformationException: No embedded stylesheet instruction for file: file:/C:/Users/roberth/Programming_Projects/eclipse/javaport/src/logback.xml
    at org.eclipse.wst.xsl.jaxp.debug.invoker.internal.JAXPSAXProcessorInvoker.transform(JAXPSAXProcessorInvoker.java:225)
    at org.eclipse.wst.xsl.jaxp.debug.invoker.internal.JAXPSAXProcessorInvoker.transform(JAXPSAXProcessorInvoker.java:186)
    at org.eclipse.wst.xsl.jaxp.debug.invoker.internal.Main.main(Main.java:73)
Caused by: org.eclipse.wst.xsl.jaxp.debug.invoker.TransformationException: No embedded stylesheet instruction for file: file:/C:/Users/roberth/Programming_Projects/eclipse/javaport/src/logback.xml
    at org.eclipse.wst.xsl.jaxp.debug.invoker.internal.JAXPSAXProcessorInvoker.transform(JAXPSAXProcessorInvoker.java:214)
    ... 2 more

Если я удалю и заново создаю конфигурацию, иногда она работает, иногда это не так.

Если я редактирую файл в блокноте ++ или другом текстовом редакторе, он отлично работает.

Это вопрос затмения или я что-то упускаю?

4b9b3361

Ответ 1

Это ошибка Eclipse, я тоже это заметил. Убедитесь, что вы используете правильную конфигурацию Eclipse Runtime (т.е. Если вы нажмете на маленькую зеленую кнопку "Play" сверху, думая, что она перезапустит последнее (действительное) время выполнения, которое вы выполнили, проверьте (нажав стрелку вниз рядом с ним), чтобы убедиться, что не создано никакого нового времени выполнения).

Что я заметил, что хотя я создаю совершенно правильное время выполнения, указывающее на основной класс Java и каждый, который я запускаю несколько раз, и все в порядке, через некоторое время, если я выберу XML файл (потому что я хотел его отредактировать, например), а затем оставьте его выбранным, когда я нажимаю кнопку запуска, Eclipse создаст новое время выполнения преобразования XSLT для этого xml файла и попытается запустить его, не выполнив исключение, о котором вы сообщаете. Решение состоит в том, чтобы стереть это время выполнения, убедитесь, что у меня нет выбранного xml файла, и заново запустите правильное время выполнения.

Ответ 2

У меня была та же проблема с самой новой версией Eclipse Juno. Сначала это кажется ошибкой внутри Eclipse. После закрытия активного окна внутри Eclipse (с открытием spring -configuration.xml) я смог запустить контейнер spring без этой ошибки. Таким образом, это зависело от конфигурации запуска. Позаботьтесь о том, чтобы вы начали свой "основной" класс и что вы не пытаетесь "запустить" xml-настройку. Это решило проблему для меня (Eclipse автоматически выбирал xml для запуска).