{"rsdb":{"rid":"87959","subhead":"","postdate":"0","aid":"65321","fid":"76","uid":"1","topic":"1","content":"
\n \u53d1\u73b0\u7f51\u4e0a\u6ca1\u6709Emacs24\u4e0b\u914d\u7f6eJava\u73af\u5883\u7684\u6587\u7ae0\uff0c\u5982\u679c\u4eceEmacs23\u76f4\u63a5\u5347\u7ea7\u7684\u8bdd\u4f1a\u51fa\u73b0\u4e00\u4e9b\u95ee\u9898\uff0c\u62bd\u7a7a\u628a\u8fd9\u4e9b\u95ee\u9898\u603b\u7ed3\u4e86\u4e00\u4e0b\uff0c\u5199\u7ed9\u6709\u9700\u8981\u7684\u670b\u53cb\uff0c\u4ee5\u8282\u7701\u4f60\u7684\u65f6\u95f4\u3002 \n
\n \u5728Emacs24 \u4e0b\u5b89\u88c5CEDET \u548c JDEE \u6765\u5b9e\u73b0Java\u73af\u5883 \u4f1a\u51fa\u73b0\u4e00\u4e9b\u95ee\u9898\uff0c\u4e3b\u8981\u662f\u8fd9\u4e9b\u63d2\u4ef6\u5e76\u6ca1\u6709\u548cEmacs\u540c\u6b65\u66f4\u65b0\u3002\n <\/div> \n
\n 1. cedet-1.1\n <\/div> \n
\n cedet \uff1aCEDET is a Collection of Emacs Development Environment Tools \u9879\u76ee\u5730\u5740\uff1a http:\/\/cedet.sourceforge.net\/\n <\/div> \n
\n \n <\/div> \n
\n make\n <\/div> \n
\n \u5982\u679c\u7f16\u8bd1\u9047\u5230\u95ee\u9898\uff0c\u5219\u6267\u884c\n <\/div> \n
\n make clean-autoloads\n <\/div> \n
\n make clean-all\n <\/div> \n
\n \u5982\u679c\u9047\u5230 makeinfo \u547d\u4ee4\u672a\u627e\u5230 \u7684\u95ee\u9898\uff0c\u8bf7\n \u4e0b\u8f7d<\/a> sudo apt-get install texinfo \u4e0b\u8f7d\u76f8\u5e94\u7684\u5b89\u88c5\u5305\u3002\n <\/div> \n
\n \u628a\u4e0b\u8f7d\u5e76\u7f16\u8bd1\u597d\u7684CEDET\u653e\u5230~\/.emacs.d\/ \u4e0b\n <\/div> \n
\n 2. elib-1.0 \n <\/div> \n
\n 3. JDEE 2.4.0.1\n <\/div> \n
\n \n <\/div> \n
\n \u7531 (defconst jde-cedet-max-version \"1.0\" \u4e3a (defconst jde-cedet-max-version \"1.1\"\n <\/div> \n
\n \u540c\u65f6\u5220\u9664 \/jdee-2.4.0.1\/lisp\/jde.elc \n <\/div> \n
\n \u8fd9\u6837\u505a\u662f\u56e0\u4e3aJDEE\u6240\u8bbe\u7f6e\u7684 Emacs\u7684\u6700\u9ad8\u7248\u672c\u5e76\u4e0d\u517c\u5bb924 \uff0c\u6240\u4ee5\u6211\u4eec\u9700\u8981\u4fee\u6539version\u4e3a1.1\u6765\u9002\u5e94Emacs24 , \u5220\u9664jde.elc \u4ece\u800c\u8ba9emacs\u8bfb\u53d6\u975e\u7f16\u8bd1\u7684jde.el \u3002\n <\/div> \n
\n 4. \u5b89\u88c5ECB-2.40 \u3002 ECB\u662femacs\u4e0a\u6d4f\u89c8\u4ee3\u7801\u7684\u4e00\u4e2a\u5de5\u5177\u3002\u4e0b\u8f7d\u5730\u5740\uff1ahttp:\/\/ecb.sourceforge.net\/\n <\/div> \n
\n \u8fdb\u5165ECB-2.40 \u7684\u76ee\u5f55\u6267\u884cmake\n <\/div> \n
\n \u5982\u679c\u9047\u5230 Byte-compiling ECB with LOADPATH= \u2026 \u7684\u95ee\u9898\uff0c\u8bf4\u660e\u4f60make\u6587\u4ef6\u4e2d\u7684\u8def\u5f84\u6ca1\u6709\u914d\u7f6e\u6b63\u786e\uff0cECB\u662f\u4f9d\u8d56\u4e8eCEDET\u7684\uff0c\u8fd9\u65f6\u5019\u9700\u8981\u4fee\u6539makefile\u6587\u4ef6\uff0c\u6765\u52a0\u8f7d\u6b63\u786e\u7684CEDET\u8def\u5f84\u3002 \u6253\u5f00Makefile\u6587\u4ef6\u627e\u523051\u884c\uff0c\u4fee\u6539 CEDET= \u8fd9\u4e00\u884c\uff0c\u8def\u5f84\u4e3a\u4f60cedet1.1\u7684\u8def\u5f84\n <\/div> \n
\n \u5982\u679c\u9047\u5230 \uff1a ECB 2.40 \u2013 Error: ECB can only be used with cedet [1.0pre6, 1.0.9]! Please install it and restart Emacs! \u7684\u95ee\u9898\u3002 \u5219\u8bf7\u6ce8\u91caecb-upgrade.el\u7684\u5982\u4e0b\u4ee3\u7801\u3002\u7136\u540e\u5728make \u91cd\u65b0\u7f16\u8bd1ECB\n <\/div> \n
\n ;; check if vedet-version is correct\n <\/div> \n
\n (when (or (not (boundp 'cedet-version))\n <\/div> \n
\n (ecb-package-version-list<\n <\/div> \n
\n (ecb-package-version-str2list cedet-version)\n <\/div> \n
\n ecb-required-cedet-version-min)\n <\/div> \n
\n (ecb-package-version-list<\n <\/div> \n
\n ecb-required-cedet-version-max\n <\/div> \n
\n (ecb-package-version-str2list cedet-version))) (setq version-error (concat \"cedet [\" cedet-required-version-str-min\n <\/div> \n
\n \", \" cedet-required-version-str-max \"]\")))\n <\/div> \n
\n \u5728 ~\/.emacs \u4e2d\u52a0\u5165\n <\/div> \n
\n (add-to-list 'load-path \"~\/.emacs.d\/ecb-2.40\")\n <\/div> \n
\n (require 'ecb)\n <\/div> \n
\n \n <\/div> \n
\n 5. JDK\n <\/div> \n
\n \u5b89\u88c5JDK\u8fd9\u4e2a\u5c31\u4e0d\u591a\u8bf4\u4e86\u3002\n <\/div> \n
\n 6. \u52a0\u5165\u5982\u4e0b\u542f\u52a8\u547d\u4ee4\n <\/div> \n
\n \u5728 Ubuntu \u7528\u6237\u6839\u76ee\u5f55\u4e0b\u7684.emacs \u4e2d\u6dfb\u52a0\u5982\u4e0b\u5185\u5bb9\uff0c\u4ee5\u542f\u52a8JDEE \uff0c\u540c\u65f6\u907f\u514d\u4e00\u4e9b\u81f4\u547d\u7684\u9519\u8bef\uff0c\u540c\u65f6\u5728\u52a0\u8f7d\n Java<\/a>\u6587\u4ef6\u7684\u65f6\u5019\u81ea\u52a8\u88c5\u8f7dJDEE\u3002\n <\/div> \n
\n ;;add jdee cedet and jdee \n <\/div> \n
\n (add-to-list 'load-path \"~\/.emacs.d\/cedet-1.1\/common\")\n <\/div> \n
\n (load-file \"~\/.emacs.d\/cedet-1.1\/common\/cedet.el\")\n <\/div> \n
\n (add-to-list 'load-path \"~\/.emacs.d\/jdee-2.4.0.1\/lisp\")\n <\/div> \n
\n (add-to-list 'load-path (expand-file-name \"~\/.emacs.d\/elib-1.0\"))\n <\/div> \n
\n (require 'jde)\n <\/div> \n
\n ;;add ecb\n <\/div> \n
\n (add-to-list 'load-path \"~\/.emacs.d\/ecb-2.40\")\n <\/div> \n
\n (require 'ecb)\n <\/div> \n
\n ;;we need some lisp to prevent fatal errors.\n <\/div> \n
\n (defun screen-width nil -1)\n <\/div> \n
\n (setq jde-check-version-flag nil)\n <\/div> \n
\n (define-obsolete-function-alias 'make-local-hook 'ignore \"21.1\")\n <\/div> \n
\n (unless (fboundp 'semantic-format-prototype-tag-java<\/a>-mode)\n <\/div> \n
\n (defalias 'semantic-format-prototype-tag-java<\/a>-mode 'semantic-format-tag-prototype-java-mode))\n <\/div> \n
\n (require 'hippie-exp)\n <\/div> \n
\n ;;we use something to load JDEE for .java files :\n <\/div> \n
\n (add-to-list 'load-path (format \"%s\/lisp\" \"~\/.emacs.d\/jdee-2.4.0.1\" \"Path to JDEE\"))\n <\/div> \n
\n (autoload 'jde-mode \"jde\" \"JDE mode.\" t)\n <\/div> \n
\n (setq auto-mode-alistwww.2cto.com\n <\/div> \n
\n (append '((\"\\\\.java\\\\'\" . jde-mode)) auto-mode-alist))\n <\/div> \n
\n 7. \u91cd\u542femacs , \u5728\u4e0a\u8ff0\u6b65\u9aa4\u8fd0\u884c\u6b63\u5e38\u540e\u6211\u4eec\u9700\u8981\u914d\u7f6eJDE\u7684\u8fd0\u884cJDK\n <\/div> \n
\n (1) \u8f93\u5165M-x customize-variable \uff0c\u8fd9\u65f6\u5019\u4f1a\u63d0\u793a\u4f60\u9700\u8981\u914d\u7f6e\u7684\u53d8\u91cf\uff0c\u8f93\u5165jde-jdk-registry\u3001\n
\n \n <\/div> \n
\n \uff082\uff09\u51fa\u73b0\u5982\u4e0b\u56fe\u7684\u754c\u9762\u3002\n <\/div> \n
\n \u70b9\u51fbINS,\u6dfb\u52a0\u4f60\u7684JDK\u7248\u672c\u548cJDK\u7684\u8def\u5f84\u3002\n <\/div> \n
\n \uff083\uff09\u70b9\u51fbState\u6309\u94ae\uff0c\u7136\u540e\u5728\u5f39\u51fa\u7684\u83dc\u5355\u4e2d\u9009\u62e9Save for Future Sessions \u3002\n <\/div> \n
\n \uff084\uff09\u518d\u6b21\u952e\u5165M-x customize-variable \uff0c\u5728\u53d8\u91cf\u9009\u62e9\u4e2d\u8f93\u5165\uff1ajde-jdk \uff0c\u8fdb\u5165\u5982\u4e0b\u754c\u9762\uff0c\u9009\u62e9\u4f60\u8981\u7684JDK\uff0c\u7136\u540e\u70b9\u51fbState\u9009\u62e9Save for Future Sessions \u3002\n <\/div> \n
\n \n <\/div> \n
\n \uff085\uff09 \u5b8c\u6210\u4ee5\u4e0a\u7684\u6b65\u9aa4\u4e4b\u540e\uff0cJDE\u4f1a\u81ea\u52a8\u5728\u4f60\u7684.emacs\u6587\u4ef6\u4e2d\u52a0\u5165\u76f8\u5e94\u7684\u914d\u7f6e\u3002\n <\/div> \n
\n ","orderid":"0","title":"\u5728Emacs24\u4e0b\u7684Java\u73af\u5883\uff08Cedet+Elib+JDEE+ECB\uff09(\u4e00)","smalltitle":"","mid":"0","fname":"JAVA","special_id":"0","bak_id":"0","info":"0","hits":"905","pages":"2","comments":"0","posttime":"2014-11-24 12:04:52","list":"1416801892","username":"admin","author":"","copyfrom":"","copyfromurl":"","titlecolor":"","fonttype":"0","titleicon":"0","picurl":"https:\/\/www.cppentry.com\/upload_files\/article\/76\/1_b1k0r__.png","ispic":"1","yz":"1","yzer":"","yztime":"0","levels":"0","levelstime":"0","keywords":"Emacs24<\/A> Java<\/A> \u73af\u5883<\/A> Cedet<\/A> Elib<\/A> JDEE<\/A> ECB<\/A>","jumpurl":"","iframeurl":"","style":"","template":"a:3:{s:4:\"head\";s:0:\"\";s:4:\"foot\";s:0:\"\";s:8:\"bencandy\";s:0:\"\";}","target":"0","ip":"114.215.104.12","lastfid":"0","money":"0","buyuser":"","passwd":"","allowdown":"","allowview":"","editer":"","edittime":"0","begintime":"0","endtime":"0","description":"\u5728Emacs24\u4e0b\u7684Java\u73af\u5883\uff08Cedet+Elib+JDEE+ECB\uff09","lastview":"1703116152","digg_num":"1997","digg_time":"0","forbidcomment":"0","ifvote":"0","heart":"","htmlname":"","city_id":"0"},"page":"1"}