<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-11  評論-0  文章-0  trackbacks-0
      2011年12月22日

    一.Myeclipse10下載與破解

    Genuitec 公司發布了MyEclipse 10,一款Genuitec旗下的商業化Eclipse集成開發工具的升級版本。MyEclipse 10基于Eclipse Indigo構建,為Java和JavaEE項目提供了Maven3的支持。本次發布的版本中還加入了對JaveEE 6、HTML5、JPA2和JSF 2的支持。版本號10是為了慶祝即將到來的Eclipse的10周年誕辰(MyEclipse的首次發布是在8年前)。

    我現在用的還是6.5的版本,6.5的版本是我覺得最好用的一個版本。 我裝上了,還沒感受到有哪些好用,就是感覺體積龐大,和IBM 的WID一樣,是個多面手,啥事都能干,其實經常能使用的也就其中那么幾個功能,要是能像插件一樣,即插即用就好了。 

    MyEclipse 10使用最高級的桌面和Web開發技術,包括 HTML5 和 Java EE 6,支持 JPA 2.0、JSF 2.0 、Eclipselink 2.1 以及 OpenJPA 2.0. 而對 IBM WebSphere 用戶來說,MyEclipse Blue 支持最新版本的 WebSphere Portal Server 7.0、WebSphere 8 以及以前的版本,無縫的支持 IBM DB2 數據庫 。 MyEclipse 是一個十分優秀的用于開發Java, J2EE的 Eclipse 插件集合,MyEclipse的功能非常強大,支持也十分廣泛,尤其是對各種開元產品的支持十分不錯。MyEclipse目前支持Java Servlet,AJAX, JSP, JSF, Struts,Spring, Hibernate,EJB3,JDBC數據庫鏈接工具等多項功能。可以說MyEclipse幾乎囊括了目前所有主流開元產品的專屬eclipse開發工 具。

    以下是下載與破解鏈接(右擊迅雷下載):

    Myeclipse10 正式下載

    Myeclipse10 Bule版下載

    Myeclipse9/10破解包(內附詳細破解步驟)

    另附Myeclipse8/9/10 Verycd下載出處:Myeclipse_Verycd下載

    二.Myeclipse10修改字體

    MyEclipse10 是基于Eclipse3.7內核,但在Eclipse的Preferences-〉general-〉Appearance->Colors and Fonts 中并沒有找到Courier New字體,它采用的是Consolas字體,中文看著非常小非常別扭,在Windows7下,系統自帶雖然有Courier New字體,但是并沒有激活顯示,需要手動激活,才能在軟件中使用

    激活方法如下:
    在win7的控制面板->字體,找到Courier New,右鍵,顯示。然后在eclipse的fonts列表中就可以選擇了。上兩張圖


    三.Myeclipse10插件安裝

    說到插件,myeclipse自8.X開始,插件安裝就變得巨難用,通常最好還是用離線安裝,在線安裝很可能出問題,下面僅以SVN安裝為例,其他諸如ADT15,Aptana等都可采用

    1.首先下載SVN包:svn-1.6
    2.解壓SVN包,然后找到其中的兩個文件夾:features 和 plugins
    3.隨意建一個文件夾(位置和名稱自己定就好了,我的是E:\myEclipsePlugin\svn),然后把第二步的解壓好的features 和 plugins放到這個文件夾下
    4.找到myeclipse的安裝目錄,下面有一個configuration\org.eclipse.equinox.simpleconfigurator\bundles.info 文件。現在需要做的就是在該文件內添加的東西
    5.添加的內容用下面的類生成:

    1. <span style="font-size:13px;">import java.io.File;     
    2. import java.util.ArrayList;     
    3. import java.util.List;     
    4. /**   
    5.  * MyEclipse9 插件配置代碼生成器   
    6.  *   
    7.  *   
    8.  */    
    9. public class PluginConfigCreator     
    10. {     
    11.     public PluginConfigCreator()     
    12.     {     
    13.     }     
    14.     public void print(String path)     
    15.     {     
    16.         List<String> list = getFileList(path);     
    17.         if (list == null)     
    18.         {     
    19.             return;     
    20.         }     
    21.         int length = list.size();     
    22.         for (int i = 0; i < length; i++)     
    23.         {     
    24.             String result = "";     
    25.             String thePath = getFormatPath(getString(list.get(i)));     
    26.             File file = new File(thePath);     
    27.             if (file.isDirectory())     
    28.             {     
    29.                 String fileName = file.getName();     
    30.                 if (fileName.indexOf("_") < 0)     
    31.                 {     
    32.                     print(thePath);     
    33.                     continue;     
    34.                 }     
    35.                 String[] filenames = fileName.split("_");     
    36.                 String filename1 = filenames[0];     
    37.                 String filename2 = filenames[1];     
    38.                 result = filename1 + "," + filename2 + ",file:/" + path + "/"    
    39.                         + fileName + "\\,4,false";     
    40.                 System.out.println(result);     
    41.             } else if (file.isFile())     
    42.             {     
    43.                 String fileName = file.getName();     
    44.                 if (fileName.indexOf("_") < 0)     
    45.                 {     
    46.                     continue;     
    47.                 }     
    48.                 int last = fileName.lastIndexOf("_");// 最后一個下劃線的位置     
    49.                 String filename1 = fileName.substring(0, last);     
    50.                 String filename2 = fileName.substring(last + 1, fileName     
    51.                         .length() - 4);     
    52.                 result = filename1 + "," + filename2 + ",file:/" + path + "/"    
    53.                         + fileName + ",4,false";     
    54.                 System.out.println(result);     
    55.             }     
    56.         }     
    57.     }     
    58.     public List<String> getFileList(String path)     
    59.     {     
    60.         path = getFormatPath(path);     
    61.         path = path + "/";     
    62.         File filePath = new File(path);     
    63.         if (!filePath.isDirectory())     
    64.         {     
    65.             return null;     
    66.         }     
    67.         String[] filelist = filePath.list();     
    68.         List<String> filelistFilter = new ArrayList<String>();     
    69.         for (int i = 0; i < filelist.length; i++)     
    70.         {     
    71.             String tempfilename = getFormatPath(path + filelist[i]);     
    72.             filelistFilter.add(tempfilename);     
    73.         }     
    74.         return filelistFilter;     
    75.     }     
    76.     public String getString(Object object)     
    77.     {     
    78.         if (object == null)     
    79.         {     
    80.             return "";     
    81.         }     
    82.         return String.valueOf(object);     
    83.     }     
    84.     public String getFormatPath(String path)     
    85.     {     
    86.         path = path.replaceAll("\\\\", "/");     
    87.         path = path.replaceAll("http://", "/");     
    88.         return path;     
    89.     }     
    90.     public static void main(String[] args)     
    91.     {     
    92.         /*你的SVN的features 和 plugins復制后放的目錄*/    
    93.             String plugin = "E:/myEclipsePlugin/svn/";     
    94.         new PluginConfigCreator().print(plugin);     
    95.     }     
    96. }  </span>  
    6.把以上生成的字符串(一大堆)添加到第四步bundles.info文件的后面,然后重啟myeclipse即可。


    此外Adobe Flash Builder 4.6也完美支持Myeclipse10,只是插件在安裝的時候不是采用以上方式,根據官方英文文檔說明,

    首先要將Adobe Flash Builder 4.6安裝完成,

    然后進安裝目錄~\Adobe\Adobe Flash Builder 4.6\utilities運行Adobe Flash Builder 4.6 Plug-in Utility.exe,

    最后根據安裝向導設置插件安裝到myeclipse10的目錄~\Genuitec\MyEclipse 10,必須確保該目錄下包含dropins文件

    如此即可完成最新的Adobe Flash Builder 4.6插件的安裝,最后啟動myeclipse10,界面也隨之變成中文,但有時候也會有出問題,此時進入到~\Genuitec\MyEclipse 10\Uninstall Adobe Flash Builder 4.6 Plug-in目錄,運行Uninstall Adobe Flash Builder 4.6 Plug-in.exe卸載插件,重新安裝,第二次必定成功,myeclipse10對插件的兼容性沒有eclipse的好,千萬不可嘗試按 eclipse的配置去暴力修改里面的參數,否則極有可能再也起不來了!


    四.Myeclipse10優化

    最后談談如何優化Myeclipse10

    1、window-preferences-MyEclipse Enterprise Workbench-Maven4MyEclipse-Maven,將Maven JDK改為電腦上安裝的JDK,即不使用myeclipse提高的JDK
    登記add按鈕,選擇你的電腦上的JDK即可(注意:不是JRE,我的值為:Java6.014)

    2、window-preferences-MyEclipse Enterprise Workbench-Matisse4Myeclipse/Swing,將Design-time information(dt.jar) location 改用電腦安裝的JDK的dt.jar
    (即不使用myeclipse提供的dt.jar,我的值為:C:\Java6.014\lib\dt.jar)

    經過以上的優化,myeclipse的啟動時間可以減少2/3,Tomcat的啟動速度可以減少1/2(視具體情況而定)

    第一步: 取消自動validation
    validation有一堆,什么xml、jsp、jsf、js等等,我們沒有必要全部都去自動校驗一下,只是需要的時候才會手工校驗一下!

    取消方法:
    windows–>perferences–>myeclipse–>validation
    除開Manual下面的復選框全部選中之外,其他全部不選
    手工驗證方法:
    在要驗證的文件上,單擊鼠標右鍵–>myeclipse–>run validation

     

    第二步:取消Eclipse拼寫檢查
    1、拼寫檢查會給我們帶來不少的麻煩,我們的方法命名都會是單詞的縮寫,他也會提示有錯,所以最好去掉,沒有多大的用處

    windows–>perferences–>general–>validation->editors->Text Editors->spelling

     

    第三步:取消myeclipse的啟動項
    myeclipse會有很多的啟動項,而其中很多我們都用不著,或者只用一兩個,取消前面不用的就可以

    windows–>perferences–>general–>startup and shutdown  (詳見底端介紹)

     

    第四步:更改jsp默認打開的方式
    安裝了myeclipse后,編輯jsp頁面,會打開他的編輯頁面,同時也有預覽頁面,速度很慢,不適合開發。所以更改之windows–>perferences–>general–>editors->file associations

    在下方選擇一種編輯器,然后點擊左邊的default按鈕

     

    第五步:更改代碼提示快捷鍵(不建議使用增強提示,使用Ctrl+/在自己需要的時候提示更佳)

    現在的代碼提示快捷鍵,默認為ctrl+space,而我們輸入法切換也是,所以會有沖突。誰叫myeclipse是外國人做的呢。。根本不需要切換輸入法.

    windows–>perferences–>general–>Keys

    更改 content assist 為 alt+/

    同時由于alt+/已經被word completion占用,所以得同時修改word completion的快捷鍵值

    好了,現在的速度及方便性是不是提高了。

     

    第六步: 更改內存使用文件

    1、打開 myeclipse.ini

    1. -vmargs  
    2. -Xms256m  
    3. -Xmx1024m     
    4. -XX:PermSize=128M  
    5. -XX:MaxPermSize=256M  
    把下面的那個 -XX:MaxPermSize 調大,比如 -XX:MaxPermSize=512M,再把 -XX:PermSize 調成跟 -XX:MaxPermSize一樣大
    原因:大家一定對這個畫面很熟悉吧:

    幾乎每次 eclipse 卡到當都是因為這個非堆內存不足造成的,把最大跟最小調成一樣是因為不讓 myeclipse 頻繁的換內存區域大小

    注意:XX:MaxPermSize 和 Xmx 的大小之和不能超過你的電腦內存大小

    以下是有關內存的一些知識擴展:

    1.堆(Heap)和非堆(Non-heap)內存
    按照官方的說法:“Java 虛擬機具有一個堆,堆是運行時數據區域,所有類實例和數組的內存均從此處分配。堆是在 Java 虛擬機啟動時創建的。”“在JVM中堆之外的內存稱為非堆內存(Non-heap memory)”。可以看出JVM主要管理兩種類型的內存:堆和非堆。簡單來說堆就是Java代碼可及的內存,是留給開發人員使用的;非堆就是JVM留給 自己用的,所以方法區、JVM內部處理或優化所需的內存(如JIT編譯后的代碼緩存)、每個類結構(如運行時常數池、字段和方法數據)以及方法和構造方法 的代碼都在非堆內存中。
    2.堆內存分配
    JVM初始分配的內存由-Xms指定,默認是物理內存的1/64;JVM最大分配的內存由-Xmx指定,默認是物理內存的1/4。默認空余堆內存小于 40%時,JVM就會增大堆直到-Xmx的最大限制;空余堆內存大于70%時,JVM會減少堆直到-Xms的最小限制。因此服務器一般設置-Xms、 -Xmx相等以避免在每次GC 后調整堆的大小。
    3.非堆內存分配
    JVM使用-XX:PermSize設置非堆內存初始值,默認是物理內存的1/64;由XX:MaxPermSize設置最大非堆內存的大小,默認是物理內存的1/4。
    4.JVM內存限制(最大值)
    首先JVM內存限制于實際的最大物理內存,假設物理內存無限大的話,JVM內存的最大值跟操作系統有很大的關系。簡單的說就32位處理器雖然可控內存空間 有4GB,但是具體的操作系統會給一個限制,這個限制一般是2GB-3GB(一般來說Windows系統下為1.5G-2G,Linux系統下為2G- 3G),而64bit以上的處理器就不會有限制了。
    舉例說明含義:
    -Xms128m 表示JVM Heap(堆內存)最小尺寸128MB,初始分配
    -Xmx512m 表示JVM Heap(堆內存)最大允許的尺寸256MB,按需分配。
    說明:如果-Xmx不指定或者指定偏小,應用可能會導致java.lang.OutOfMemory錯誤,此錯誤來自JVM不是Throwable的,無法用try...catch捕捉。
    PermSize和MaxPermSize指明虛擬機為java永久生成對象(Permanate generation)如,class對象、方法對象這些可反射(reflective)對象分配內存限制,這些內存不包括在Heap(堆內存)區之中。
    -XX:PermSize=64MB 最小尺寸,初始分配 
    -XX:MaxPermSize=256MB 最大允許分配尺寸,按需分配
    過小會導致:java.lang.OutOfMemoryError: PermGen space
    MaxPermSize缺省值和-server -client選項相關。-server選項下默認MaxPermSize為64m  -client選項下默認MaxPermSize為32m
    PS:不同廠家的jdk垃圾回收算法不一樣。在sun的jdk下,Xms和Xmx設置一樣,可以減輕伸縮堆大小帶來的壓力,但在ibm的jdk下面,設置為一樣會增大堆碎片產生的幾率。


    第七步: 修改Struts-config.xml文件打開錯誤

    有時點擊myeclipse里的struts的xml配置文件,會報錯:

    Error opening the editorUnable to open the editor ,unknow the editor id…..

    把這個窗口關閉后才出正確的xml文件顯示,這個我們這樣改:

    windows–>perferences–>general–>editors->file associations選擇*.xml,選擇myeclipse xml editor點default,ok

     

    第八步: 取消自動驗證,該成手動驗證

    windows-->perferences-->myeclipse-->validation

    將Build下全部勾取消,保留Manual(手動) 如果你需要驗證某個文件的時候,我們可以單獨去驗證它。方法是,在需要驗證的文件上( 右鍵 -> MyEclipse -> Run Validation   

     

    第九步: 取消Maven更新(啟動更新)

    Window > Preferences > Myeclipse Enterprise Workbench > Maven4Myeclipse > Maven> 禁用Download repository index updates on startup







    到此有關Myeclipse10的體驗介紹完畢,歡迎大家拍磚,轉載請注明出處!


    轉載于 Myeclipse10下載,安裝,破解,插件,優化介紹(CSDN首發)  http://blog.csdn.net/shimiso/article/details/7061000

    posted @ 2011-12-22 09:24 王健 閱讀(2157) | 評論 (0)編輯 收藏
      2010年9月29日
    客戶端“跨域訪問”一直是一個頭疼的問題,好在有jQuery幫忙,從jQuery-1.2以后跨域問題便迎刃而解。由于自己在項目中遇到跨域問題,借此機會對跨域問題來刨根問底,查閱了相關資料和自己的實踐,算是解決了跨域問題。便記錄下來,以供查閱。 
            jQuery.ajax()支持get方式的跨域,這其實是采用jsonp的方式來完成的。
            真實案例:
            $.ajax({ 
                async:false, 
                url: 'http://www.mysite.com/demo.do',  // 跨域URL
                type: 'GET', 
                dataType: 'jsonp', 
                jsonp: 'jsoncallback', //默認callback
                data: mydata, 
                timeout: 5000, 
                beforeSend: function(){  //jsonp 方式此方法不被觸發。原因可能是dataType如果指定為jsonp的話,就已經不是ajax事件了
                },
                success: function (json) { //客戶端jquery預先定義好的callback函數,成功獲取跨域服務器上的json數據后,會動態執行這個callback函數 
                    if(json.actionErrors.length!=0){ 
                        alert(json.actionErrors); 
                    } 
                    genDynamicContent(qsData,type,json); 
                }, 
                complete: function(XMLHttpRequest, textStatus){ 
                    $.unblockUI({ fadeOut: 10 }); 
                }, 
                error: function(xhr){ 
                    //jsonp 方式此方法不被觸發
                    //請求出錯處理 
                    alert("請求出錯(請檢查相關度網絡狀況.)"); 
                } 
            });

            注意:
            $.getJSON(" http://www.mysite.com/demo.do?name1="+value1+"&callback=?", 
                function(json){ 
                    if(json.屬性名==值){ 
                        // 執行代碼 
                    } 
            }); 
        這種方式其實是上例$.ajax({..}) api的一種高級封裝,有些$.ajax api底層的參數就被封裝而不可見了。

        在服務端通過callback= request.getParameter("callback") 得到jQuery端隨后要回調的jsonp32440980
        然后返回類似:"jsonp32440980("+要返回的json數組+")"; 
        jquery就會通過回調方法動態加載調用這個:jsonp32440980(json數組);
        這樣就達到了跨域數據交換的目的. 
        jsonp的最基本的原理是:動態添加一個是一致的(qq空間就是大量采用這種方式來實現跨域數據交換的) 。JSONP是一種腳本注入(Script Injection)行為,所以也有一定的安全隱患。
        注意:jquey是不支持post方式跨域的。
        這是因為雖然采用post +動態生成iframe是可以達到post跨域的目的(有位js牛人就是這樣把jquery1.2.5 打patch的),但這樣做是一個比較極端的方式,不建議采用。也可以說get方式的跨域是合法的,post方式從安全角度上被認為是不合法的,萬不得已還是不要post,client端跨域訪問的需求看來也引起w3c的注意了,看資料說html5 WebSocket標準支持跨域的數據交換,應該也是一個將來可選的跨域數據交換的解決方案。
    參考:http://www.jb51.net/article/21213.htm

    posted @ 2010-09-29 11:27 王健 閱讀(150) | 評論 (0)編輯 收藏
         摘要:   閱讀全文
    posted @ 2010-09-29 11:27 王健 閱讀(2476) | 評論 (0)編輯 收藏
      2010年9月22日
         摘要:   閱讀全文
    posted @ 2010-09-22 18:34 王健 閱讀(168) | 評論 (0)編輯 收藏
      2010年9月15日
         摘要:   閱讀全文
    posted @ 2010-09-15 08:13 王健 閱讀(703) | 評論 (0)編輯 收藏
         摘要:   閱讀全文
    posted @ 2010-09-15 08:10 王健 閱讀(120) | 評論 (0)編輯 收藏
         摘要: http://www.json.org/json-zh.html  閱讀全文
    posted @ 2010-09-15 06:39 王健 閱讀(396) | 評論 (0)編輯 收藏
      2010年9月1日
    http://www.cnblogs.com/zxub/archive/2006/08/03/466682.html
    posted @ 2010-09-01 11:39 王健 閱讀(403) | 評論 (0)編輯 收藏
      2010年8月31日
    http://files.cnblogs.com/guoyilin/freemarker%E4%BE%8B%E5%AD%90.rar
    http://www.004.la/data/2010/0414/article_44.htm
    posted @ 2010-08-31 18:50 王健 閱讀(165) | 評論 (0)編輯 收藏
    Hi,

    I have a web application that was running on tomcat5.5. Now i want to deploy it on tomcat 6. when runing it, i got an error saying:

    org.apache.jasper.JasperException: java.lang.ClassCastException:org.apache.catalina.util.DefaultAnnotationProcessor cannot be cast to org.apache.AnnotationProcessor
            at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:522)
            at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:356)

    After a search, i found that DefaultAnnotationProcessor implements AnnotationProcessor and in tomcat 6 catalina.jar and jasper.jar both of them contains AnnotationProcessor interface in the same package. Some solution was suggested by kind people but it doesn't work for me, which is adding this line:

    <Loader delegate="true" />

    to the context element in the context.xml file of tomcat.

    Did any body face this problem?

    warm regards



    根據上面的描述,并修改了tomcat里的context.xml文件,在context 元素下添加
    <Loader delegate="true" /> 
    即可
    posted @ 2010-08-31 17:42 王健 閱讀(410) | 評論 (0)編輯 收藏
    僅列出標題  下一頁
    主站蜘蛛池模板: 亚洲午夜激情视频| 亚洲自偷自偷偷色无码中文| 亚洲AV成人精品一区二区三区| 亚洲精品乱码久久久久久不卡| 国产真人无码作爱视频免费| 亚洲av一本岛在线播放| 亚洲国产主播精品极品网红| 一区二区免费视频| 亚洲AV成人精品一区二区三区| 国产av无码专区亚洲av桃花庵| www.黄色免费网站| 国产区在线免费观看| 亚洲欧洲日韩极速播放| 久久亚洲AV永久无码精品| 国产成人免费网站| 大地资源在线资源免费观看| wwwxxx亚洲| 久久精品视频亚洲| 国产成人免费ā片在线观看| 一级毛片免费观看| CAOPORN国产精品免费视频| 亚洲综合精品成人| 午夜亚洲国产理论秋霞| 免费在线看片网站| 国产1024精品视频专区免费| 免费黄色电影在线观看| 丰满少妇作爱视频免费观看| 涩涩色中文综合亚洲| 亚洲AV日韩精品久久久久久| 亚洲国产天堂久久综合| 成人一a毛片免费视频| 久久免费的精品国产V∧| 国产精品免费久久| 男男黄GAY片免费网站WWW| 亚洲中文字幕无码一去台湾| 久久亚洲伊人中字综合精品| 亚洲日韩中文字幕日韩在线| 永久黄网站色视频免费观看| 青青草a免费线观a| 毛片免费全部播放无码| 国产白丝无码免费视频|