joda-time

Joda-Time is the widely used replacement for the Java date and time classes prior to Java SE 8.

Github星跟蹤圖

Joda-Time

Joda-Time provides a quality replacement for the Java date and time classes.
The design allows for multiple calendar systems, while still providing a simple API.
The 'default' calendar is the ISO8601 standard which is used by XML.
The Gregorian, Julian, Buddhist, Coptic, Ethiopic and Islamic systems are also included.
Supporting classes include time zone, duration, format and parsing.

Joda-time is no longer in active development except to keep timezone data up to date.
From Java SE 8 onwards, users are asked to migrate to java.time (JSR-310) - a core part of the JDK which replaces this project.
For Android users, java.time is added in API 26+.
Projects needing to support lower API levels can use the ThreeTenABP library.

As a flavour of Joda-Time, here's some example code:

public boolean isAfterPayDay(DateTime datetime) {
  if (datetime.getMonthOfYear() == 2) {   // February is month 2!!
    return datetime.getDayOfMonth() > 26;
  }
  return datetime.getDayOfMonth() > 28;
}

public Days daysToNewYear(LocalDate fromDate) {
  LocalDate newYear = fromDate.plusYears(1).withDayOfYear(1);
  return Days.daysBetween(fromDate, newYear);
}

public boolean isRentalOverdue(DateTime datetimeRented) {
  Period rentalPeriod = new Period().withDays(2).withHours(12);
  return datetimeRented.plus(rentalPeriod).isBeforeNow();
}

public String getBirthMonthText(LocalDate dateOfBirth) {
  return dateOfBirth.monthOfYear().getAsText(Locale.ENGLISH);
}

Joda-Time is licensed under the business-friendly Apache 2.0 licence.

Documentation

Various documentation is available:

Releases

Release 2.10.5 is the current latest release.
This release is considered stable and worthy of the 2.x tag.
It depends on JDK 1.5 or later.

Available in the Maven Central repository

Maven configuration:

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

Gradle configuration:

compile 'joda-time:joda-time:2.10.5'

Tidelift dependency check

Related projects at GitHub:

Other related projects:

For enterprise

Available as part of the Tidelift Subscription.

Joda and the maintainers of thousands of other packages are working with Tidelift to deliver one enterprise subscription that covers all of the open source you use.

If you want the flexibility of open source and the confidence of commercial-grade software, this is for you.

Learn more

Support

Please use Stack Overflow for general usage questions.
GitHub issues and pull requests
should be used when you want to help advance the project.

Any donations to support the project are accepted via OpenCollective.

To report a security vulnerability, please use the Tidelift security contact.
Tidelift will coordinate the fix and disclosure.

Release process

  • Update version (pom.xml, README.md, index.md, MANIFEST.MF, changes.xml)
  • Commit and push
  • Ensure on Java SE 8
  • mvn clean deploy -Doss.repo -Dgpg.passphrase=""
  • Website will be built and released by Travis

主要指標

概覽
名稱與所有者JodaOrg/joda-time
主編程語言Java
編程語言Java (語言數: 3)
平台
許可證Apache License 2.0
所有者活动
創建於2011-05-16 16:49:57
推送於2025-06-17 09:58:41
最后一次提交
發布數84
最新版本名稱v2.14.0 (發布於 )
第一版名稱PRE_PARTIAL_REFACTOR (發布於 )
用户参与
星數5k
關注者數217
派生數1k
提交數2.3k
已啟用問題?
問題數454
打開的問題數27
拉請求數170
打開的拉請求數11
關閉的拉請求數176
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?