2017-04-21 18 views
0

我在Windows 10上运行IntelliJ Idea 2017,我正在开发一个springboot项目,当我尝试运行简单测试用例时出现以下错误。IntelliJ Idea 2017:SpringBoot测试用例问题:内容不允许在序言中

Caused by: org.xml.sax.SAXParseException; systemId: file:..../src/test/java/com/hero/project/controller/MainControllerTest.java; lineNumber: 1; columnNumber: 1; Content is not allowed in prolog. 
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:203) 
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:177) 
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:441) 
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368) 
at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1436) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:999) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606) 
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:117) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510) 
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848) 
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777) 
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) 
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213) 
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649) 
at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:281) 
... 6 more 

下面是测试情况下,它抱怨

package com.hero.project.controller; 
import org.junit.Before; 
import org.junit.Test; 
import org.springframework.test.web.servlet.MockMvc; 
import org.springframework.test.web.servlet.setup.MockMvcBuilders; 
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; 
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; 
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.view; 

public class MainControllerTest { 
    private MockMvc mockMvc; 
    private MainController homeController; 
    @Before 
    public void setUp() throws Exception { 
     homeController = new MainController(); 
     mockMvc = MockMvcBuilders.standaloneSetup(homeController).build(); 
    } 

    @Test 
    public void index() throws Exception { 
     mockMvc.perform(get("/")) 
       .andExpect(status().isOk()) 
       .andExpect(view().name("index")); 
    } 

} 

这是MainController类。

package com.hero.project.controller; 

import org.springframework.stereotype.Controller; 
import org.springframework.ui.Model; 
import org.springframework.web.bind.annotation.RequestMapping; 

import java.util.Calendar; 

@Controller 
public class MainController { 

    @RequestMapping("/") 
    public String index(Model model){ 
     int year = Calendar.getInstance().get(Calendar.YEAR); 
     model.addAttribute("year",year); 
     return "index"; 
    } 

} 

注意:在使用的IntelliJ IDEA 2017年的同一版本的Mac上相同的代码工作正常。我很难调试这个问题。我会感谢任何帮助。谢谢

+0

可能的重复http://stackoverflow.com/questions/32772352/java-file-content-not-allowed-in-prolog – duffymo

+0

不,这不是我尝试相同的解决方案,但没有工作,似乎它与Intellij的问题我使用Intellij Idea从零开始创建了这个项目 –

+0

我正在使用IntelliJ 2017并且没有遇到这样的问题。我认为这是你的代码。 – duffymo

回答

0

最后,我明白了。正是这个插件“Ant调试器”引发了这个问题。我禁用了它并运行测试并繁荣它的工作。

相关问题