2014-12-07 3 views
3

Я использовал JDEE для своих проектов java в Emacs. JDEE плохо работает для maven. Недавно я столкнулся с режимом Малабар, который имеет лучшую поддержку Java-проектов Maven в Emacs.Emacs Java Malabar Mode

Мне удалось установить malbar-mode, используя melpa в M-x list-packages. Но когда я получаю сообщение об ошибке на mvn package для моего простого приложения https://github.com/vijayendra/JavaSrc/tree/master/my-app

Projects.get('/home/egnyte/src/my-app/pom.xml', []).run(['package'], [], [:]) 
[INFO] Scanning for projects... 
[INFO] ------------------------------------------------------------------------ 
[INFO] Building my-app Maven Webapp 1.0-SNAPSHOT 
[INFO] ------------------------------------------------------------------------ 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD FAILURE 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 0.081s 
[INFO] Finished at: Sat Dec 06 23:55:22 PST 2014 
[INFO] Final Memory: 20M/48M 
[INFO] ------------------------------------------------------------------------ 
[ERROR] Execution error 
org.apache.maven.plugin.PluginResolutionException: Plugin org.apache.maven.plugins:maven-resources-plugin:2.5 or one of its dependencies could not be resolved: Failed to read artifact descriptor for or\ 
g.apache.maven.plugins:maven-resources-plugin:jar:2.5 
     at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolve(DefaultPluginDependenciesResolver.java:129) 
     at org.apache.maven.plugin.internal.DefaultMavenPluginManager.getPluginDescriptor(DefaultMavenPluginManager.java:142) 
     at org.apache.maven.plugin.internal.DefaultMavenPluginManager.getMojoDescriptor(DefaultMavenPluginManager.java:261) 
     at org.apache.maven.plugin.DefaultBuildPluginManager.getMojoDescriptor(DefaultBuildPluginManager.java:185) 

Мой Emacs версии выглядит следующим образом:

emacs -version 
GNU Emacs 24.3.1 
Copyright (C) 2013 Free Software Foundation, Inc. 
GNU Emacs comes with ABSOLUTELY NO WARRANTY. 
You may redistribute copies of Emacs 
under the terms of the GNU General Public License. 
For more information about these matters, see the file named COPYING. 

Мой .emacs файл выглядит следующим образом:

(require 'package) ;; You might already have this line 
(add-to-list 'package-archives 
      '("melpa-stable" . "http://stable.melpa.org/packages/") t) 
;; unstable packages 
;; (add-to-list 'package-archives 
;;    '("melpa" . "http://melpa.org/packages/") t) 
(when (< emacs-major-version 24) 
    ;; For important compatibility libraries like cl-lib 
    (add-to-list 'package-archives '("gnu" . "http://elpa.gnu.org/packages/"))) 
(package-initialize) ;; You might already have this line 

(require 'cedet) 
(require 'semantic) 
(load "semantic/loaddefs.el") 
(semantic-mode 1) 
(setq malabar-groovy-lib-dir "~/.m2/repository/com/software-ninja/malabar/1.5.10") 
(require 'malabar-mode) 
(add-to-list 'auto-mode-alist '("\\.java\\'" . malabar-mode))  

Мое решение:

mvn -version 
Apache Maven 3.2.3 (33f8c3e1027c3ddde99d3cdebad2656a31e8fdf4; 2014-08-11T13:58:10-07:00) 
Maven home: /home/egnyte/lib/apache-maven-3.2.3 
Java version: 1.7.0_65, vendor: Oracle Corporation 
Java home: /usr/lib/jvm/java-7-openjdk-amd64/jre 
Default locale: en_US, platform encoding: UTF-8 
OS name: "linux", version: "3.8.0-29-generic", arch: "amd64", family: "unix" 

Как я могу заставить режим малабара работать?

+0

Вы попробуйте спросить на вопрос трекера Малабара режиме? Я считаю, что есть также постоянная переработка кода для malabar-mode ... – rimero

ответ

1

Есть два ответа.

Во-первых, малабар-режим застрял на maven 3.0.4, поэтому попробуйте эту версию. Также не устанавливайте каталог lib. Он должен быть установлен автоматически.

Во-вторых, чтобы обойти версию maven, я переписываю malabar-mode с нуля. Следуйте инструкциям на странице https://github.com/m0smith/malabar-mode/blob/develop/doc/2.0/INSTALL.md. Эта версия должна работать для всех версий maven после 3.0.4. Это незавершенная работа, и не все функции еще есть.
Если у вас есть проблемы или предложения создать проблемы в репо GitHub, как сейчас хорошее время, чтобы получить свои желания

EDIT: 2,0 Малабара был выпущен MELPA. Для того, чтобы установить сейчас:

`` `

(load-file "~/projects/cedet/cedet-devel-load.el") 
(add-hook 'after-init-hook (lambda() 
      (message "activate-malabar-mode") 
      (activate-malabar-mode))) 

(add-hook 'malabar-java-mode-hook 'flycheck-mode) 
(add-hook 'malabar-groovy-mode-hook 'flycheck-mode) 

` ``

+0

Я пробовал с maven 3.0.4 и удалил lib dir. Тем не менее, я получаю такую ​​же ошибку. Кроме того, я не смог получить версию 2.0. Я снова попытаюсь установить версию 2.0 сегодня. Я опубликую ошибки на github. –

+0

Да, пожалуйста, перейдите к 2.0 и опубликуйте ошибки на нем. Это будет лучший опыт продвижения вперед. Кроме того, если есть недостающие функции, отправляйте их также как проблемы. –

 Смежные вопросы

  • Нет связанных вопросов^_^