posts - 25,  comments - 25,  trackbacks - 0
            2006年1月4日
          公司里傳著的故事:兔子狼和老虎
          2006-04-15 14:36:53
            

          和朋友聊天,經常說到在法國公司里的管理,侃起來玩笑多了。參加法國商會的企業活動,發現是啊個個長得都差不多,優點毛病也都像,忍不住的時候跟在場的同胞心照不宣對臉笑:“咱們一個德行!”

          下面講一個聽來的故事:某君做管理老是郁悶,和老外上司的溝通反正就是一種擰巴的感覺,其人反復捫心自問:“我的法語不好?”,“為什么沒跟老板對上眼兒?” “昨兒老板大會上表揚我的工作,怎么今兒就來了個績效低劣的評語?是我英文聽走了耳朵?”“沒準兒是我有病了?”(注意:這時候的健康反應是:此君該去拜訪心理醫生了)一日,此君郵箱里收到一短信“別跟你自己過不去了,笑一笑吧。”打開附件,讀罷,一個人在辦公室仰天大笑。故事這樣寫:
          兔子跟街上走著,迎面碰上了老狼。老狼伸手就給他一大嘴巴:“讓你丫不戴帽子”。
          兔子很郁悶地回家了,弄一帽子戴著。
          第二天又碰上老狼了,又挨了一大嘴巴,“讓你丫戴帽子”。   
          如是幾次,總挨打。兔子想,這么老挨打不是個事兒啊,不行,我得找老虎投訴去。 
          剛到老虎家門口,就聽老虎在屋里說話。  
          “你也不能老這么蠻不講理打兔子阿,回頭兔子找我投訴來,我也不好罩著你啊。好歹咱面子上得過得去,我教你一招。 下回你見著兔子,跟他說:給我弄點兒洗衣服的來。他給你拿肥皂來,你就打他一頓的,說我要的是洗衣粉,誰讓你拿肥皂。他拿洗衣粉來,你也能打,說我要洗衣粉,誰讓你拿肥皂。

          要不然你跟他說,去,給我找個妞兒來。他給你找個胖的,你打他一頓說我要瘦的;給你找個瘦的,你也打一頓,說我要胖的。這樣不結了,你也能打他,我面子上也能說得過去。”
          兔子一聽,得,咱也別投訴了,回家吧。
          第二天,兔子在街上又撞上老狼。老狼大喝一聲:去,給我找點兒洗衣服的來。   
          兔子不慌不忙:你是要洗衣粉阿,還是要肥皂啊?   
          老狼一聽,嗯?有一手啊。又說:去,給我找個妞兒來。  
          兔子還是不慌不忙:你是要胖的啊,還是瘦的?  
          老狼一聽勃然大怒,伸手就給兔子一個大嘴巴:“讓你丫不戴帽子!”

          ?記得講完這個故事的時候,在座的朋友不少在老法的公司里打工多年,評論踴躍,最先的講的是:法國人就是這樣,你學著作狼吧。(前一句俺不同意,后一句嚇壞了俺)。有的說:別偏見了,哪國人哪家外企里都有好的和差的。有一個說的最服氣:不管是法國人日本兒美國人,包括國企,民企,是人在一起做事做公司就免不了有類似的事兒。想想看,要是沒事兒到哪兒找飯碗你”

          沒錯,我覺得什么事都可以積極地看。這個故事也一樣,換個方法讀,可以很好玩兒。

          這么說吧:你覺得你就是那兔子,而且沒有當狼的本事和心思(別想著當狼,魔高一尺道高一丈!做人這條線得守得住!),那你也不用去琢磨胖妞兒還是瘦妞兒洗衣粉還是肥皂。上班沒勁還不想著辭職?你就是共產主義教育下的蹲班生,真的相信世道上從來就有救世主?三十六計呀。炒一回自己上司的魷魚感覺多帶勁,用不著一個人郁悶恨不得找個小布人兒當你老板天天狠命往上面扎針兒。下課下崗,天一下子塌得下來嗎?積極的看這是開始一場新的旅行,可能有很多的好看和驚喜。不過我還要叮囑你一句,離開狼的時候,別忘了教育狼:依法履行用人單位中止勞動合同應負的補償責任,《勞動法》里面寫的你的權益不是放在銀盤子上面捧給你的,那得你自己去拿到。后一句不是我說,是法國人雨果說。

          你要是個作狼那層位置的(我聲明自己堅信大多數人本質上不是狼),當引以為戒。作管理用不著成天琢磨怎么讓你的下屬臣服。別忘了下屬那么多人很可能比你更熟悉客戶和市場,經常有你所不具有的聰明,你不如去琢磨怎么讓你的下屬和團隊開心和充滿激情,做大生意都得要這一群人的打拼才有成功。信任和善待最為,大棒子下從來沒有出色的創造。你老是讓人家想著今天戴帽子明天不戴帽子,搞得人人膽戰心驚,你自己怎么會得到管理業績?搞不好你就是那個全體下屬都把兔子狼和老虎的故事在網上傳,而你是唯一人家不給發的主兒。可憐!

          你知道你的位子是老虎,那得看清楚這么當老虎危矣。我看你還是別老盯著漂亮的英文法文報告吧。要知道真實情況不完全在那里面,有的時候完全不在。最好不時地下山溜達會兒,學學中國的康熙皇上微服私訪。對公司管理人電腦里傳這類兔子老虎狼的故事,你得有一手,你應該每回都想辦法知道這些。用狼用狗你短時效過得好過得去,一旦山里頭狼多了,你自己也就不好當王了。所以法國人說“笑到最后才是笑得最好。”還要記住,美國通用電氣韋爾奇老領導說過:管理人哪怕業績好,做人不行(原文是價值觀念與公司不同道),也絕不能提拔和久留!聽韋爾奇的話,用老領導的招兒:得人就得財,丟人就丟財,如果你的管理團隊的下屬都跟兔子似的跑了,就給他們的績效管理和個人晉升扣分數和扣獎金。而且勸你也來個自下而上定期對管理層的不記名民意調查,了解兔子們那一層對你的管理人的看法,那樣兔子們有話語權就會信任擁戴老虎你了。現在有英特網,這招兒快而靈。

          ?聽說兔子狼和老虎的故事最早是從培訓課堂里傳出來的,自己不脛而走,在電腦網絡里滿天飛。一定有各種有趣的講述版本。

          昨晚讀到一個叫Pascal? Guignard 的法國人評論法國歷史上的一個故事: 1638年5月14日,Saint-Cyran先生被捕。 “在Saint-Cyran 的思想里有一個人內心自由的永不妥協的觀念,它會摧毀任何一個社會。這至少是黎希留(當時1638年的法國“總理”)在盧浮宮里接見他的時候立刻就感覺到的。” (摘自《游蕩的影》,作者Pascal? Guignard,2002年法國貢古爾文學獎)。

          在法文中“societe”指“社會”,也指“公司”。

          posted @ 2006-04-19 08:59 子玉 閱讀(484) | 評論 (0)編輯 收藏

          -jar參數運行應用時classpath的設置方法

           
          ZealLi 2005-04-28 10:20 于 JAVA/C++ , 3314 字 |  + 1 - 0   English
          轉載請保留本文原始鏈接:http://www.zeali.net/blog/entry.php?id=15
          你是否在使用java -jar參數運行打包好的jar應用程序的時候發現應用程序無法找到classpath下設置好的第三方類庫的內容?無論怎么設置classpath參數都無濟于事,總是會報ClassNotFound的錯誤?那么本篇帖子可以幫助你擺脫煩惱 :)

          當用java -jar yourJarExe.jar來運行一個經過打包的應用程序的時候,你會發現如何設置-classpath參數應用程序都找不到相應的第三方類,報ClassNotFound錯誤。實際上這是由于當使用-jar參數運行的時候,java VM會屏蔽所有的外部classpath,而只以本身yourJarExe.jar的內部class作為類的尋找范圍。

          **解決方案**

          一 BootStrap class擴展方案

          Java 命令行提供了如何擴展bootStrap 級別class的簡單方法.
          -Xbootclasspath:     完全取代基本核心的Java class 搜索路徑.
                                             不常用,否則要重新寫所有Java 核心class
          -Xbootclasspath/a: 后綴在核心class搜索路徑后面.常用!!
          -Xbootclasspath/p: 前綴在核心class搜索路徑前面.不常用,避免
                                             引起不必要的沖突.

          語法如下:
           (分隔符與classpath參數類似,unix使用:號,windows使用;號,這里以unix為例)
           java -Xbootclasspath/a:/usrhome/thirdlib.jar: -jar yourJarExe.jar

          二 extend class 擴展方案

          Java exten class 存放在{Java_home}\jre\lib\ext目錄下.當調用Java時,對擴展class路徑的搜索是自動的.總會搜索的.這樣,解決的方案就很簡單了,將所有要使用的第三方的jar包都復制到ext 目錄下.

          三 User class擴展方案

          當使用-jar執行可執行Jar包時,JVM將Jar包所在目錄設置為codebase目錄,所有的class搜索都在這個目錄下開始.所以如果使用了其他第三方的jar包,一個比較可以接受的可配置方案,就是利用jar包的Manifest擴展機制.
          步驟如下:

           1.將需要的第三方的jar包,復制在同可執行jar所在的目錄或某個子目錄下. 比如:jar 包在 /usrhome/yourJarExe.jar 那么你可以把所有jar包復制到/usrhome目錄下或/usrhome/lib 等類似的子目錄下.

           2.修改Manifest 文件

           在Manifest.mf文件里加入如下行

           Class-Path:classes12.jar lib/thirdlib.jar

           Class-Path 是可執行jar包運行依賴的關鍵詞.詳細內容可以參考 http://java.sun.com/docs/books/tutorial/ext/index.html


          以上三種方法推薦第一種,擴展性好,操作起來也最方便.
          另外編寫自己的ClassLoader,來動態載入class,是更加復雜和高級技術.限于篇幅,不贅述.有興趣了解可以去google一下custom classloader

          Java的安全機制隨不同的JDK版本有不同的變化,會影響很多核心CLASS,比如Thread,所以很多大型商業軟件,要求JDK的版本很嚴格.部分原因也在此.這也要求在發布自己編寫的應用時候,不管大小,都要說明開發和測試的JDK版本.


          本文所述方法測試基于j2sdk 1.4.2_04-b05

          ----------------------------------------------------------------------------------------------

          附:背景知識

          自JDK 1.2以后,JVM采用了委托(delegate)模式來載入class.采用這種設計的原因可以參考http://java.sun.com/docs/books/tutorial/ext/basics/load.html

          歸納來講:是基于JVM sandbox(沙盒)安裝模型上提供應用層的可定制的安全機制.


          Java虛擬機(JVM)尋找Class的順序

          1. Bootstrap classes

          屬于Java 平臺核心的class,比如java.lang.String等.及rt.jar等重要的核心級別的class.這是由JVM Bootstrap class loader來載入的.一般是放置在{java_home}\jre\lib目錄下

          2. Extension classes

          基于Java擴展機制,用來擴展Java核心功能模塊.比如Java串口通訊模塊comm.jar.一般放置在{Java_home}\jre\lib\ext目錄下

          3. User classes

          開發人員或其他第三方開發的Java程序包.通過命令行的-classpath或-cp,或者通過設置CLASSPATH環境變量來引用.JVM通過放置在{java_home}\lib\tools.jar來尋找和調用用戶級的class.常用的javac也是通過調用tools.jar來尋找用戶指定的路徑來編譯Java源程序.這樣就引出了User class路徑搜索的順序或優先級別的問題.

           3.1 缺省值:調用Java或javawa的當前路徑(.),是開發的class所存在的當前目錄
           3.2 CLASSPATH環境變量設置的路徑.如果設置了CLASSPATH,則CLASSPATH的值會覆蓋缺省值
           3.3 執行Java的命令行-classpath或-cp的值,如果制定了這兩個命令行參數之一,它的值會覆蓋環境變量CLASSPATH的值
           3.4 -jar 選項:如果通過java -jar 來運行一個可執行的jar包,這當前jar包會覆蓋上面所有的值.換句話說,-jar 后面所跟的jar包的優先級別最高,如果指定了-jar選項,所有環境變量和命令行制定的搜索路徑都將被忽略.JVM APPClassloader將只會以jar包為搜索范圍.
          有關可執行jar有許多相關的安全方面的描述,可以參考http://java.sun.com/docs/books/tutorial/jar/ 來全面了解.

          這也是為什么應用程序打包成可執行的jar包后,不管你怎么設置classpath都不能引用到第三方jar包的東西了.

          posted @ 2006-01-04 13:45 子玉 閱讀(620) | 評論 (0)編輯 收藏
          <2006年1月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          2930311234

          常用鏈接

          留言簿(7)

          隨筆檔案

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 伊金霍洛旗| 凤凰县| 长顺县| 广平县| 昆明市| 株洲县| 玉树县| 大宁县| 扶余县| 黑河市| 南城县| 大洼县| 芮城县| 罗城| 鄯善县| 玛沁县| 恩施市| 蒲城县| 应城市| 孙吴县| 靖州| 布拖县| 龙井市| 申扎县| 安远县| 噶尔县| 辉南县| 沁阳市| 荃湾区| 鄂托克前旗| 军事| 东海县| 赤水市| 昌吉市| 平定县| 饶河县| 汉川市| 万安县| 卫辉市| 蛟河市| 霍州市|