2017-06-30 18 views
0

私の春のブートアプリケーションでは、htmlで日付文字列を表示する必要があります。スプリングブートジャクソン日付付き

spring: 
    jackson: 
     date-format: HH:mm:ss.SSSSSS 
     joda-date-time-format: HH:mm:ss.SSSSSS 

私はアイデアを実行したとき、それは言葉することができますが、私はjarファイルをパケットと、このjarファイルを実行するために、Mavenを使用する場合、それは働くことができない:私は時間ジェイソンを取得するには、このコードを使用しました。 例外メッセージがあります:

beans.factory.BeanCreationException: Error creating bean with name 'jacksonObjectMapperBuilder' defined in class path resource [org/springframework/boot/autoconfigure/jackson/JacksonAutoConfiguration$Jac 
ksonObjectMapperBuilderConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframe 
work.http.converter.json.Jackson2ObjectMapperBuilder]: Factory method 'jacksonObjectMapperBuilder' threw exception; nested exception is java.lang.IllegalArgumentException: name 

ジェイソン時間文字列を取得するために行う必要がありますか?ここ は私のpom.xml

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>com.example</groupId> 
    <artifactId>demo</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>jar</packaging> 

    <name>demo</name> 

    <parent> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-parent</artifactId> 
     <version>1.5.4.RELEASE</version> 
     <relativePath/> <!-- lookup parent from repository --> 
    </parent> 

    <properties> 
     <thymeleaf.version>3.0.0.RELEASE</thymeleaf.version> 
     <thymeleaf-layout-dialect.version>2.0.0</thymeleaf-layout-dialect.version> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> 
     <java.version>1.8</java.version> 
    </properties> 

    <dependencies> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-data-jpa</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-thymeleaf</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-web</artifactId> 
     </dependency> 

     <dependency> 
      <groupId>mysql</groupId> 
      <artifactId>mysql-connector-java</artifactId> 
      <scope>runtime</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-test</artifactId> 
      <scope>test</scope> 
     </dependency> 

    </dependencies> 

    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
      </plugin> 
     </plugins> 
    </build> 
</project> 

と私のテーブルクラスであるということです:私の春ブートアプリケーションで

@Entity 
public class TimeData { 
    @Id 
    @GeneratedValue(strategy = GenerationType.AUTO) 
    private long id; 

    @Temporal(TemporalType.TIME) 
    @JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "HH:mm:ss.SSSSSS",timezone = "GMT+8") 
    private Date curingTime; 

    public long getId() { 
     return id; 
    } 

    public void setId(long id) { 
     this.id = id; 
    } 

    public Date getCuringTime() { 
     return curingTime; 
    } 

    public void setCuringTime(Date curingTime) { 
     this.curingTime = curingTime; 
    } 
} 

私は日時データとジェイソン文字列を返すようにする必要があります。 IDEAでうまく実行できますが、jarで実行できませんでした。

+0

例外メッセージは「名前」に関する文句です。これはパラメータですか? – efekctive

答えて

0

これはクラスパスの問題のようです。あなたのスタックトレースはあなたの実際のコードとは全く関係ありません。私はあなたが何とか同じライブラリの互換性のないバージョンを引っ張っているかもしれないと思います。これらすべての依存関係が実際に必要であることを確認し、削除できるものを見て、Jarを再実行してみてください。

関連する問題