Как установить формат переменной ${date}, который можно использовать в шаблонах Eclipse?
Как установить формат переменной даты Eclipse?
Ответ 1
Обновление февраля 2016 года: ошибка 75981 официально зафиксирована!
См. Jmini ниже ответ
Обновление июля 2015 года, 6 лет спустя:
Ошибка, упомянутая ниже, кажется исправленной в Eclipse 4.x.
Эрик Ван комментарии ниже:
@date ${id:date('YYYY-MMM-dd')} ${time}
это дает мне английский формат datetime в eclipse 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()); } }
Ответ 2
Вы могли бы сказать, что Eclipse использует конкретную локаль, отличную от той, что у вашей операционной системы. Eclipse 3.5 (64 бит) не использует настройки области MacOS X. Язык установки MacOS X на английском языке с Германией в качестве страны предоставляет неправильный формат даты.
Вы можете исправить его для своей установки Eclipse, когда вы добавляете следующие строки в свой eclipse.ini:
-Duser.language=de
-Duser.region=DE
Ответ 3
Я установил Ошибка 75981 с Eclipse Neon M5. Вы можете скачать этот выпуск Milestone здесь:
http://www.eclipse.org/downloads/index-developer.php
... или подождать до июня 2016 года для официального релиза Neon.
Вот краткое описание того, как это работает:
- Как и прежде, вы можете использовать переменную date без аргумента. Пример:
${date}
- Вы можете использовать переменную с дополнительными аргументами. В этом случае вам нужно будет указать переменную (поскольку вы не используете другую дату в другом месте, имя переменной не имеет значения). Пример:
${mydate:date}
- Первый параметр - это формат даты. Пример:
${d:date('yyyy-MM-dd')}
- Второй параметр - это локаль. Пример:
${maDate:date('EEEE dd MMMM yyyy HH:mm:ss Z', 'fr')}
- Первый параметр - это формат даты. Пример:
Дополнительная информация об этой функции в моем блоге: Исправлена ошибка 75981!
Ответ 4
Дополнительная информация для тех, кто спотыкается об этом в последнее время (например, я):
Для формата даты ISO 8601 можно использовать языковые настройки fr-CA.