繁体   English   中英

如何在Maven中使用Joda-Time?

[英]How to use Joda-Time with Maven?

我觉得这似乎是一个非常愚蠢的问题,因为Joda-Time易于使用,并且在其用户指南中没有关于如何使用它的解释(而且我在网络上找不到有用的答案)。

我尝试使用Joda-Time方法,该方法可以计算两个日期之间的持续时间。 我必须将当前日期与其他日期进行比较。

我不能使用LocalDateTime因为该类不存在(所以我创建了它),但是我看到“ duration”需要在该类中实现ReadableDuration ,但是该接口也不存在。

我试图写:

DateTime dt = new DateTime(juDate);

public class LocalDateTime implements ReadableDuration{

    public LocalDateTime() {
    }
}

我已经通过依赖Maven安装了Joda-Time,我有2.9.1版本。

<dependency>
        <groupId>joda-time</groupId>
        <artifactId>joda-time</artifactId>
        <version>2.9.1</version>
</dependency>

请问您可以向新手解释如何做吗?

java.time

在JDK 8中对time api进行了重新设计,类似于很多Joda-Time(我认为Joda-Time是某些JSR的实现)。

引用http://www.joda.org/joda-time/

Joda-Time是Java的事实上的标准日期和时间库。 从Java SE 8开始,要求用户迁移到java.time(JSR-310)。

因此,只需创建一个JDK 8项目,您的LocalDate和LocalTime类应该在包java.time中可用。

之后,只需遵循官方的oracle教程即可:

http://www.oracle.com/technetwork/articles/java/jf14-date-time-2125367.html

玻璃纤维

您是否已在pom.xml文件中完成以下操作?

<dependency>
  <groupId>joda-time</groupId>
  <artifactId>joda-time</artifactId>
  <version>2.9.1</version>
</dependency>

然后,在添加了该条目之后,您必须从IDE或命令行执行mvn clean install。 然后,它应该作为项目中的导入可用。 如果您使用的是其他构建系统,那么我想参考以下页面: http : //www.joda.org/joda-time/dependency-info.html

不要自己创建类,这表明没有通过构建系统导入项目。

您应该能够在类声明上方的代码中执行以下操作:

import org.joda.time.LocalDateTime;

这样就可以使用它了。

编辑:作为上述信息的补充,我可以看到您接受了建议您切换到Java 8的答案。虽然在这种情况下,这可能会起作用,但是如果您需要其他不需要的软件包(依赖项)怎么办?通过升级到更高的Java版本可以使用吗?

我建议您阅读诸如Maven和Gradle之类的构建系统。 这些主要用于Java项目。 只是玩弄它可以提供见解。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM