2016-07-01 13 views
5

H2 konsolu kullanmak için bahar önyükleme uygulamamı yapılandırmaya çalışıyorum. Bazı makaleler buldum ve hepsi webServlet kullanıyor. Ama benim pom.xml'imde eklediğim h2 bağımlılığı olmasına rağmen sınıfı alamıyorum. Bu hata iletisini can not resolve the symbol WebServlet aldım. Benim ithalat hattıorg.h2.server.web.WebServlet alınamıyor

Aşağıda
import org.h2.server.web.WebServlet; 

@Bean 
public ServletRegistrationBean h2servletRegistration() { 
    ServletRegistrationBean registration = new ServletRegistrationBean(new WebServlet()); 
    registration.addUrlMappings("/console/*"); 
    return registration; 
} 

bana ne olduğumu bilsin benim pom.xml

<dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-web</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-aop</artifactId> 
      <scope>compile</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.myfaces.core</groupId> 
      <artifactId>myfaces-impl</artifactId> 
      <version>2.2.6</version> 
      <scope>compile</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.myfaces.core</groupId> 
      <artifactId>myfaces-api</artifactId> 
      <version>2.2.6</version> 
      <scope>compile</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-data-jpa</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>com.h2database</groupId> 
      <artifactId>h2</artifactId> 
      <scope>runtime</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-actuator</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.tomcat.embed</groupId> 
      <artifactId>tomcat-embed-core</artifactId> 
      <scope>compile</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.tomcat.embed</groupId> 
      <artifactId>tomcat-embed-logging-juli</artifactId> 
      <scope>compile</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.tomcat.embed</groupId> 
      <artifactId>tomcat-embed-jasper</artifactId> 
      <scope>compile</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-tomcat</artifactId> 
      <scope>provided</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.hibernate</groupId> 
      <artifactId>hibernate-validator</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>javax.validation</groupId> 
      <artifactId>validation-api</artifactId> 
      <version>1.1.0.Final</version> 
     </dependency> 
     <dependency> 
      <groupId>org.primefaces</groupId> 
      <artifactId>primefaces</artifactId> 
      <version>5.1</version> 
      <scope>compile</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.primefaces.extensions</groupId> 
      <artifactId>all-themes</artifactId> 
      <version>1.0.8</version> 
     </dependency> 
     <dependency> 
      <groupId>org.ocpsoft.rewrite</groupId> 
      <artifactId>rewrite-servlet</artifactId> 
      <version>2.0.12.Final</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-security</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-devtools</artifactId> 
     </dependency> 

ve benim application.properties

spring.datasource.url=jdbc:h2:mem:AZ;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE 
spring.datasource.driverClassName=org.h2.Driver 
spring.datasource.username=sa 
spring.datasource.password= 
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect 

ve yapılandırma burada eksik.

cevap

8

H2, compile (runtime yerine) bağımlı değil midir?

3

Aynı sorunla karşılaştığımda da aynı problemi yaşadım. Doğru maven pom.xml bağımlılığı vardı ama bir nedenden dolayı doğrudan Maven'den h2 sürücü kavanozunu indirmek zorunda kaldı. Sonra yukarıdaki kod çalıştı. "Çalışma zamanı" öğesinin uzaklaştırılması varsayılan olarak derlenecek.

<!-- https://mvnrepository.com/artifact/com.h2database/h2 --> 
    <dependency> 
     <groupId>com.h2database</groupId> 
     <artifactId>h2</artifactId> 
     <version>1.4.192</version> 
    </dependency> 
1

Sadece h2 bağımlılık oluşturmak Çalışma zamanını kaldırmak ve her şey iyi olacak

İlgili konular