楓中暢游

          關注技術,熱愛生活
          隨筆 - 15, 文章 - 0, 評論 - 3, 引用 - 0

          導航

          <2013年7月>
          30123456
          78910111213
          14151617181920
          21222324252627
          28293031123
          45678910

          公告

          常用鏈接

          留言簿

          隨筆分類

          隨筆檔案

          友情鏈接

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          2013年7月3日

          linux系統(tǒng)之上搭建maven 之nexus服務篇

                 今天剛好有點時間,就想在公司的服務器搭建一個私服,以便以后可以唯我所用,當然前提是服務器最好可以上網,否則還需要配置代理服務器,前兩天剛好把服務器的網絡給配置了下,這邊就不詳述了!大家一定著急了吧,稍安務燥,這就進入正題,O(∩_∩)O~

                  linux安裝過程和window主機還是差別挺大的。

          1.下載nexus集成版

          到這個地方http://www.sonatype.org/nexus/go 下載壓縮包,我這邊下載的是nexus-2.0.3-bundle.tar.gz這個版本。

          2. 解壓到相應的目錄

          tar  -xzvf  nexus-2.0.3-bundle.tar.gz , 我這邊放在/home/linjx/opendev/nexus-2.0.3目錄下。

           

          3. 設置為系統(tǒng)服務

          這里需要使用root權限,具體請看http://books.sonatype.com/nexus-book/reference/install-sect-service.html

          簡單如下:

          # cd  /etc/init.d

          # cp  /home/linjx/opendev/nexus-2.0.3/bin/jsw/linux-x86-64/nexus ./nexus

          # chmod 755 nexus

          # chkconfig --add nexus

          # chkconfig --levels 345 nexus on

           

          4. 編輯/etc/init.d/nexus的文本

          4.1. 添加以下變量

          RUN_AS_USER=linjx    ## 這個主要為了后面使用,不需要使用root用戶啟動服務

          NEXUS_HOME=/home/linjx/opendev/nexus-2.0.3/

          PLATFORM=linux-x86-64

          PLATFORM_DIR="${NEXUS_HOME}/bin/jsw/${PLATFORM}"

          4.2. 修改以下變量

          WRAPPER_CMD="${PLATFORM_DIR}/wrapper"

          WRAPPER_CONF="${PLATFORM_DIR}/../conf/wrapper.conf"

           

           

          PIDDIR="${NEXUS_HOME}"

           

          5. 啟動服務

          切換會自己的用戶,不需要使用root用戶;

          # service nexus start

           

          這個大家出現什么情況,是不是失敗了!界面上出現 :Could not write pid file /etc/rc.d/init.d/./nexus.pid: Permission denied通過查看日志文件:

          fzdev#[/home/linjx/opendev/nexus-2.0.3/logs] cat w*  

          wrapper  | ERROR: Could not write pid file /etc/rc.d/init.d/./nexus.pid: Permission denied

           

          怎么辦呢,根據信息提示,nexus.pid無法寫入,應該還是權限問題,這個應該跟啟動當前服務有關。

           

          查文檔http://books.sonatype.com/nexus-book/reference/install-sect-service.html后發(fā)現,一有段信息沒有配置,

          Change PIDDIR to a directory where this user has read/write permissions. In most Linux distributions, /var/run is only writable by root. The properties you need to add to customize the PID file location is "wrapper.pid". For more information about this property and how it would be configured in wrapper.conf, see: http://wrapper.tanukisoftware.com/doc/english/properties.html

           

          大概意思就是服務啟動時無法寫入pid,就是說init.d這個目錄當前用戶是沒有權限寫的,怎么辦呢。可以自定義pid寫入目錄,那么在哪里配置呢,是不是又想起了wrapper.conf了,其他文檔中也說明了。

          好吧,那就再加個配置吧,這樣:PIDDIR="/home/linjx/piddir"

           

          然后再啟動服務,果然成功了!具體可以看看附件中的詳細的日志!



           

          6. 啟動之后,可以登錄首頁查看nexus的界面

          http://192.168.1.26:8081/nexus/index.html

           

          默認管理員用戶名/密碼: admin/admin123

           



           

          posted @ 2013-08-21 09:32 javalinjx 閱讀(14957) | 評論 (2)編輯 收藏

          使用leiningen搭建clojure開發(fā)環(huán)境

          首先來講下Leiningen是什么東東?

          Leiningen是一個用于自動化(構建)clojure項目的工具。

          它可以做到:

              創(chuàng)建新項目

              管理你的項目的依賴關系

              運行測試

              運行一個REPL(讀取-求值-打印循環(huán):read-eval-print loop)

              編譯java源碼

              運行項目

              為項目產生一個Maven風格的POM文件

              為了部署,編譯和打包項目

              發(fā)布類庫到Maven倉庫,例如Clojars

              運行Clojure編寫的自定義的自動化任務(稱為Leiningen插件)

              ... 具體可以查看國內的大牛(killme2008)翻譯的Leiningen教程中文版的詳細介紹。

          好些話說多了點,大家別著急啊,馬上就切入主題:

          1. 下載安裝Leiningen

             linux: 

                  1. 確保你是jdk 6 版本以下的。

                  2. 下載腳本lein

                  3. 把lein加入下當前的$path下(~/bin 是最好的選擇)

                  4. 賦可執(zhí)行權限(chmod 755 ~/bin/lein)

            windows:

                  1. 可以直接下載打包好的文件,地址是:Leiningen for windows

                  2. 點擊下載好的*.exe文件進行安裝

                  3. 安裝好后,可以查看環(huán)境變量中會有相應的變量被設置好了:

                   lein.bat is added to your PATH variable.

                  LEIN_JAVA_CMD is set to point to your selected JDK, and the :java-cmd property is set in your              user profile in profiles.clj.

                  

                  接下來,打開命令窗口,輸入命令:lein self-install  ,會自動下載安裝leiningen 相關的jar文件。

                 

                 驗證下安裝成果: 在命令窗口中輸入lein repl ,會自動連上nREPL server,進入repl模式,如下所示:

           

                

          Shell代碼  收藏代碼
          1. C:\Users\linjx>lein repl  
          2. nREPL server started on port 21912  
          3. REPL-y 0.2.0  
          4. Clojure 1.5.1  
          5.     Docs: (doc function-name-here)  
          6.           (find-doc "part-of-name-here")  
          7.   Source: (source function-name-here)  
          8.  Javadoc: (javadoc java-object-or-class-here)  
          9.     Exit: Control+D or (exit) or (quit)  
          10.   
          11. user=>  

           

              如果出現上面的提示,則說明leiningen安裝成功,你可以在使用leiningen開發(fā)你的clojure之旅了。

              但是往往我們不滿足于現狀,希望可以更有效的使用lein編寫clojure。類似java的idea,eclipse一樣,都對編寫java提供了強大的工具,那么我們可以選擇什么樣的工具呢,毫無疑問,Emacs是最合適的工具,沒有之一:)

               對于我這斷斷續(xù)續(xù)學習emacs的來說,還真不是不容易,昨晚查看了相關的e文說明,在emacs中成功裝配了nrepl ,用以后續(xù)的開發(fā)學習,便記錄一下,希望對自己以后查閱,以及需要的人有所幫助。

               首先,我本地有emacs 24 版本的, 這里不想講emacs 的安裝,這個大家自個兒查詢下google便可以了。

               在安裝好leiningen之后,現在進入nrepl的主頁看看,這是個什么東東!

               nrepl.el is an Emacs client for nREPL,the Clojre networked REPL server.It's a great alternative to the now deprecated combination fo SLIME + swank-clojure.

              nrepl.el是emacs作為nrepl的一個客戶端,nrepl是一個反對目前slime+swank-clojure組合的最好的替代品。

               下面來看下如何安裝nrepl.el:

                1. emacs 24 以及更高版本是構建在package.el之上的,但是emacs 23以下版本的,你需要自己獲取package.el .

                雖然我的是24版本的,但是我也下載了package.el,并存放在     C:\Users\linjx\AppData\Roaming\.emacs.d 目前下,這個是我的emacs在windows下的配置目錄。

                2. 這里需要提一個文件,即 .emacs 文件,這個是emacs初始化配置的文件,位于C:\Users\linjx\AppData\Roaming 目錄下。

                   如果你不需要使用Marmalade,則添加配置 到 .emacs文件中,如下所示:

           

          Lisp代碼  收藏代碼
          1. (require 'package)  
          2. (add-to-list 'package-archives  
          3.              '("marmalade" . "http://marmalade-repo.org/packages/"))  
          4. (package-initialize)  

           

           由于使用MELPA the code ,需要添加配置到 .emacs文件中,

               

          Lisp代碼  收藏代碼
          1. (require 'package)  
          2. (add-to-list 'package-archives  
          3.              '("melpa" . "http://melpa.milkbox.net/packages/") t)  
          4. (package-initialize)  

           

            在emacs中打開.emacs文件,并M-x eval-buffer,執(zhí)行當前的配置。

              

               3.  刷新配置

          Lisp代碼  收藏代碼
          1. M-x package-refresh-contents  回車  

               emacs會自動下載安裝Marmalade , melpa相關的配置;

           

               4. 安裝nrepl

                   輸入命令 

          命令代碼  收藏代碼
          1. M-x package-install 回車  
          2.        nrepl 回車  

           

               致此,nrepl集成到emacs的安裝完畢,可以使用emacs開發(fā)你的hello world!了。

          ( 當然,emacs還可以與其他集成用來clojure的開發(fā),這里我就不詳述了,畢竟沒有使用!)

           

          現在我們使用lein new 一個clojure項目出來:

          1. $  lein new hello

           

          2. 打開emacs,在buffer中打開 hello所在的目錄下的project.clj文件

           

          3. 輸入命令:M-x nrepl-jack-in,即可初始化一個nrepl server  和 nrepl client

          如下圖所示:



           

           

          posted @ 2013-07-03 13:40 javalinjx 閱讀(8286) | 評論 (0)編輯 收藏

          git命令記錄

          從服務器創(chuàng)建一個本地倉庫的clone版本:

          git clone /path/to/repository

          如果是遠端服務器上的倉庫,你的命令是這樣:

          git clone username@host:/path/to/repository

          多種方式的URI

           

          git add <filename>

          git add *

          git commit -m "代碼提交信息"

           

          將本地倉庫的head中的東西提交到遠程服務器上:

          git push origin master(分支名)

          欲將本地的倉庫連接到某個遠程服務器

          git remote add origin <server>

           

          持續(xù)補充,作為自己查詢使用

          posted @ 2013-07-03 12:18 javalinjx 閱讀(270) | 評論 (0)編輯 收藏

          主站蜘蛛池模板: 潮州市| 玉屏| 江阴市| 龙南县| 阳泉市| 兴国县| 高台县| 平顺县| 瑞金市| 桦甸市| 肥西县| 札达县| 黄石市| 陇西县| 大城县| 江都市| 巫溪县| 聂拉木县| 同德县| 镇坪县| 永靖县| 商河县| 屏边| 威信县| 子长县| 沾化县| 无锡市| 游戏| 海晏县| 鄂托克前旗| 娄底市| 镇赉县| 潮州市| 墨玉县| 和林格尔县| 汝城县| 棋牌| 会宁县| 嫩江县| 固始县| 自治县|