Как установить формат переменной даты Eclipse?

Как установить формат переменной ${date}, которую можно использовать в шаблонах Eclipse?

4 ответа

Решение

Обновление февраль 2016: ошибка 75981 официально исправлена!
Смотрите Jmini ниже

введите описание изображения здесь


Обновление июль 2015, 6 лет спустя:

Ошибка, упомянутая ниже, кажется, исправлена ​​в Eclipse 4.x.
Эрик Ван комментарии ниже:

@date ${id:date('YYYY-MMM-dd')} ${time} 

это дает мне английский формат даты и времени в затмении 4.


Оригинальный ответ 2009 Eclipse 3.x

Argh! Только для этого существует давняя ошибка: ошибка 75981

${date} переменная может быть расширена для принятия аргумента (аналогично другим параметризациям, добавленным в 3.3M1), например ${d:date(format)}, где format это образец для SimpleDateFormat,

Единственной альтернативой будет изменение класса SimpleTemplateVariableResolver (как описано в этой теме), из пакета org.eclipse.jface.text.templates, (У вас есть пример такого расширения).

В этой теме упоминаются источники, где вы можете найти класс.

\eclipse\plugins\org.eclipse.platform.source_3.1.0\src\org.eclipse.text_3.1.0\src.zip

Пример:

public static class Date extends SimpleTemplateVariableResolver {
/**
* Creates a new date variable
*/
public Date() {
super("date", TextTemplateMessages.getString("GlobalVariables.variable.description.date")); //$NON-NLS-1$ //$NON-NLS-2$ }

protected String resolve(TemplateContext context) {
    //return DateFormat.getDateInstance().format(new java.util.Date());
    DateFormat df = new SimpleDateFormat("dd/MM/yyyy");
    return df.format(new java.util.Date()); } }

Вы можете указать Eclipse использовать конкретную локаль, отличную от вашей операционной системы. Eclipse 3.5 (64 бит) не использует настройки региона MacOS X. Английский язык установки MacOS X с Германией в качестве страны предоставляет неверный формат даты.

Вы можете исправить это для вашей установки Eclipse, добавив следующие строки в ваш eclipse.ini:

-Duser.language=de
-Duser.region=DE

Я исправил ошибку 75981 с Eclipse Neon M5. Вы можете скачать этот Milestone Release здесь:

http://www.eclipse.org/downloads/index-developer.php

… Или дождитесь официального релиза Neon до июня 2016 года.

Вот краткое описание того, как это работает:

  • Как и раньше, вы можете использовать переменную даты без аргументов. Пример: ${date}
  • Вы можете использовать переменную с дополнительными аргументами. В этом случае вам нужно будет присвоить имя переменной (поскольку вы не используете дату где-то еще, имя переменной не имеет значения). Пример: ${mydate:date}
    • Первый параметр - это формат даты. Пример: ${d:date('yyyy-MM-dd')}
    • Второй параметр - это локаль. Пример: ${maDate:date('EEEE dd MMMM yyyy HH:mm:ss Z', 'fr')}

Редактировать шаблон в настройках Eclipse

Больше информации об этой функции в моем блоге: Исправлена ​​ошибка 75981!

Дополнительная информация для тех, кто спотыкается об этом в последнее время (как я):

Для формата даты ISO 8601 можно использовать языковые настройки fr-CA.

Другие вопросы по тегам