Как установить формат переменной даты 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')}
- Первый параметр - это формат даты. Пример:
Больше информации об этой функции в моем блоге: Исправлена ошибка 75981!
Дополнительная информация для тех, кто спотыкается об этом в последнее время (как я):
Для формата даты ISO 8601 можно использовать языковые настройки fr-CA.