将Windows MyEclipse的web项目移植到Debian下
用windows先的MyEclipse很方便,但是要把MyEclipse的web項目移植到Debian下,稍微有一點麻煩。當然,如果是ubuntu的話,直接裝MyEclipse就可以了。這里只將針對于無圖形界面的Debian的移植過程。
1.配環境(jdk+apache+tomcat+mysql)(當然,不需要數據庫的就用配了)
2.把原來的項目移植到Linux下。
主要分為以上兩個部分講述。
=========================
1.1 jdk
我下載的是jdk.tar.gz包,在安裝上和rpm的包有一點不同。
1.1.1 jdk上傳到Debian中(推薦用winscp,方便且圖形化)。
1.1.2 配置jdk的環境變量:在/etc/profile中增加下面這三個語句,保存后退出
# vim /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.24/ export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$CLASSPATH1.1.3 使環境變量生效
# source /etc/profile1.1.4 檢驗環境變了安裝成功。輸入如下的話,看是否可以出現jdk的版本號。或者寫一個hello world,用javac,java編譯運行,可以輸出語句的就可以了。這個網上很多,隨便找一下就可以了
# source /etc/profile=========================
1.2 apache-tomcat
我是兩個一起安裝的,下載的是apache-tomcat.tar.gz的安裝包。比較方便,完全不用安裝。。。
1.2.1 把安裝包上傳到Debian,找一個文件夾解壓這個安裝包
# tar zxvf apache-tomcat-5.5.34.tar.gz1.2.2 然后當前目錄就會出現一個文件夾:?apache-tomcat-5.5.34。 進入到這個文件夾中的bin目錄下,命令行輸入
# ./startup.sh啟動服務器。這個時候在瀏覽器中輸入 http://you_id:8080 就可以看到tomcat的歡迎頁面了。
當然,如果你的debian有獨立ip的話就把you_id換成獨立ip,沒有的話。。。
服務器配好了后先不忙把項目導入進去。先配mysql
【以上代碼和說明都來自或參考:http://www.linuxde.net/2011/10/1401.html】
==========================
1.3 MySQL
1.3.1 直接用apt-get安裝
# sudo apt-get install mysql-server我不知道為什么網上給了那么多安裝mysql的教程,復雜有難裝。這個多簡單,一句話就搞定了,而且用的時候一樣好用。
1.3.2 添加用戶。我是一直都用root的,因為是自己用,沒什么關系。
# /usr/bin/mysqladmin -u root password 123456這個就可以了,root用戶,123456密碼
1.3.3 修改字符編碼。這個時候的數據如果存入中文的話,在數據庫中會顯示??。這種情況下,使用where xxx="dddd"查詢的時候結果為空。所以要修改?/etc/my.cnf 文件:
以下每一項都最好是添加下面的話,盡量不要刪除原來的語句。當然,有沖突的就以下面的為準:
[client] default-character-set=utf8[mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 #default-character-set=utf8 character-set-server=utf8 init_connect='SET NAMES utf8'[mysql] no-auto-rehash default-character-set=utf8[mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid1.3.4 重啟服務器
#/etc/init.d/mysql restart這個時候就可以了。當然,如果在做1.3.3這步操作之前數據庫中已經有中文數據的話,這個中文數據應該是不會正常顯示的
重新導入一次就可以了(1.3.3和1.3.4都參考自:http://www.linuxde.net/2011/10/1401.html)
?
=========================
到這里為止,環境都配完了,現在要開始移植。以一個我自己寫的簡單servlet小例子為例。
=========================
結構如上所示。重要的是src下面那個包中的java文件盒WEB_INF下面的lib和web.xml。
BookItem.java
public class BookItem extends HttpServlet{public void doGet(HttpServletRequest request, HttpServletResponse response){PrintWriter out;try {out = response.getWriter();out.println("a BookItem page");} catch (IOException e) {// TODO Auto-generated catch block//out.println("something else failed"); e.printStackTrace();}}public void dePost(HttpServletRequest request, HttpServletResponse response){doGet(request, response);}}web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list><servlet><servlet-name>test</servlet-name><servlet-class>com.bookiten.BookItem</servlet-class></servlet><servlet-mapping><servlet-name>test</servlet-name><url-pattern>/test</url-pattern></servlet-mapping> </web-app>按照這種形式,在MyEclipse中打開服務器程序,在瀏覽器中輸入http://localhost:8080/Test/test 就可以看到打印輸出的【a BookItem page】
這一步成功了,說明在window下的程序可以正常運行。然后放到debian下。
特別說明:這個程序一定要先被編譯一次,再拷貝到debian中。否則classes文件在debian下無法解析(恩,大概是這么個意思)
移植的時候非常簡單,只需要移動兩個文件夾就可以了。
1)首先我們要在debian解壓得到的apache-tomcat/webapps目錄下,新建一個文件夾,就叫它test,就是下面這個樹形結構的根節點。
test |-- WEB-INF | |-- classes | | `-- com | | `-- bookiten | | `-- BookItem.class | |-- lib | `-- web.xml `-- com`-- bookiten`-- BookItem.java然后我們可以看到,這個test根節點下面有兩個文件夾,分別是WEB-INF和com
沒錯,這兩個文件夾就是從剛才的MyEclipse項目中直接上傳上去的。不需要做任何修改。值得注意的是,com.bookiten包是在src文件夾下面的。在windows下面,src文件夾比較有用。但是到了debian下面的話,就沒必要要src了。
2)重啟服務器。進入到apache-tomcat/bin目錄下,在終端輸入如下,重啟服務器
./shutdown.sh ./startup.sh3)在瀏覽器中輸入http://you_ip/test/test 就可以看到【a BookItem page】輸出了
這里需要注意的是,我們在windows下面輸入的網址是Test/test, 而在debian下面輸入的是test/test。大小寫一定要分清。
因為在windows下面,MyEclipse的項目名稱叫Test,所以在windows下面用Test/test
而在debian下,我們心間的文件夾是test,所以在debian下用test/test
這也說明,你的項目叫什么名字,就改成什么就可以了。
========================================
如果項目不涉及數據庫操作的話,到這里就可以。但是如果涉及數據庫的話,也沒有復雜很多。最關鍵的就是導入mysql.jar包(參考自:http://blog.163.com/cvskill@126/blog/static/3814738020097604524363/)
①下載MySQL的JDBC驅動,我的是mysql-connector-java-5.1.7.jar包。網上隨便都可以下到。
②把mysql.jar包上傳到debian的隨便什么目錄下
③修改環境變量。我們在上面安裝jdk的時候配過一次環境變量的。現在再在path中加上mysql.jar包的絕對路徑就可以了
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:/home/software/mysql-connector-java-5.1.7.bin.jar:$PATH需要注意的地方都已經標紅了。和windows下面不同,debian的環境變了要用冒號分開,而不是分號。需要注意。
④再將這個mysql.jar包拷貝到apache-tomcat/lib目錄下面(當然,在MyEclipse項目中所用到的所有jar包,都要考到這個目錄下)
⑤萬能的重新啟動服務器
注意:
1. 在MyEclipse中訪問數據庫的用戶名和密碼,最好是和在debian中是一樣的。因為代碼需要編譯才能在debian中使用,如果僅僅在debian中修改源碼是沒有效果的。所以數據庫的用戶名和密碼最好保持一致
2. 還是在MyEclipse中,先編譯再把源文件包和WEB-INF拷到debian中
然后就可以在瀏覽器上訪問了。
?
?
?
?
?
?
?
Bon Appetite~
轉載于:https://www.cnblogs.com/zhawj159753/p/3985080.html
總結
以上是生活随笔為你收集整理的将Windows MyEclipse的web项目移植到Debian下的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android NDK MediaCod
- 下一篇: 操作系统文件编程知识