導航:首頁 > 操作系統 > linuxswt

linuxswt

發布時間:2023-02-05 23:08:54

A. linux上安裝was報錯

你執行安裝的人是否有許可權讀取安裝目錄的所有東西?你是在你的安裝文件的根目錄執行的安裝命令嗎?

B. 如何使用kettle源碼更改spoon的東西

1.2. 編譯源碼
將項目載入到eclipse
將kettle項目拷貝到eclipse的workspace目錄下,在eclipse中新建java project,項目名稱和你拷貝過來的kettle文件夾名稱一致

項目導入到eclipse中會出現一個錯誤,如下圖,將這個文件的源碼全部注釋掉

編譯
打開build.xml, 在右邊的。Outline 點擊kettle->run as ->ant build

第一次編譯的時候需要從網上下載幾個文件,放在C:\Documents and Settings\Administrator\.subfloor,網路不好的話下載會比較慢,也可以直接文件放在C:\Documents and Settings\Administrator\下。編譯完成後將bin目錄下的.bat文件拷貝到Kettle目錄下點擊Spoon.bat運行,運行成功代表編譯已近通過
用源碼運行Spoon
Kettle源碼工程本身可能是在linux64位機器上調試的,swt配置是linux64的庫,所有在運行源碼前需要修改成win32的swt,步驟如下:工程à屬性àJava Build Pathàlibrariesàadd jars

然後將linux64的SWT庫刪除

最後打開src-uiàorg.pentaho.di.ui.spoonàSpoon.java, Run As àjava application
二.源碼分析
2.1. 修改kettle界面
修改初始化界面
打開package org.pentaho.di.ui.spoon的Spoon.Java,找到main函數,該main函數為Spoon工具的入口,找到如下語句

Splash splash = new Splash(display);

該語句為spoon初始化顯示的界面,跳到定義Splash.java,下面函數

canvas.addPaintListener(new PaintListener() {
publicvoid paintControl(PaintEvent e) {
String versionText = BaseMessages.getString(PKG, "SplashDialog.Version") + " " + Const.VERSION; //$NON-NLS-1$ //$NON-NLS-2$

StringBuilder sb = new StringBuilder();
String line = null;

try {
BufferedReader reader = new BufferedReader(newInputStreamReader(Splash.class.getClassLoader().getResourceAsStream("org/pentaho/di/ui/core/dialog/license/license.txt")));//$NON-NLS-1$

while((line = reader.readLine()) != null) {
sb.append(line + System.getProperty("line.separator")); //$NON-NLS-1$
}
} catch (Exception ex) {
sb.append(""); //$NON-NLS-1$
Log.warn(BaseMessages.getString(PKG, "SplashDialog.LicenseTextNotFound")); //$NON-NLS-1$
}

String licenseText = sb.toString();
e.gc.drawImage(kettle_image, 0, 0);

// If this is a Milestone or RC release, warn the user
if (Const.RELEASE.equals(Const.ReleaseType.MILESTONE)) {
versionText = BaseMessages.getString(PKG, "SplashDialog.DeveloperRelease") + " - " + versionText; //$NON-NLS-1$ //$NON-NLS-2$
drawVersionWarning(e);
} elseif (Const.RELEASE.equals(Const.ReleaseType.RELEASE_CANDIDATE)) {
versionText = BaseMessages.getString(PKG, "SplashDialog.ReleaseCandidate") + " - " + versionText; //$NON-NLS-1$//$NON-NLS-2$
}
elseif (Const.RELEASE.equals(Const.ReleaseType.PREVIEW)) {
versionText = BaseMessages.getString(PKG, "SplashDialog.PreviewRelease") + " - " + versionText; //$NON-NLS-1$//$NON-NLS-2$
}
elseif (Const.RELEASE.equals(Const.ReleaseType.GA)) {
versionText = BaseMessages.getString(PKG, "SplashDialog.GA") + " - " + versionText; //$NON-NLS-1$//$NON-NLS-2$
}

Font verFont = new Font(e.display, "Helvetica", 11, SWT.BOLD); //$NON-NLS-1$
e.gc.setFont(verFont);
e.gc.drawText(versionText, 290, 205, true);

// try using the desired font size for the license text
int fontSize = 8;
Font licFont = new Font(e.display, "Helvetica", fontSize, SWT.NORMAL); //$NON-NLS-1$
e.gc.setFont(licFont);

// if the text will not fit the allowed space
while (!willLicenseTextFit(licenseText, e.gc)) {
fontSize--;
licFont = new Font(e.display, "Helvetica", fontSize, SWT.NORMAL); //$NON-NLS-1$
e.gc.setFont(licFont);
}

e.gc.drawText(licenseText, 290, 290, true);
}
});

1. 修改背景圖片
找到ui/image/下面的kettle_splash.png,替換該圖片
2. 修改版本信息
找到e.gc.drawText(versionText, 290, 205, true); 改為e.gc.drawText("海康威視數據交換平台V1.0", 290, 205, true);
3. 修改下面的描述性文字
找到e.gc.drawText(licenseText, 290, 290, true);改為e.gc.drawText("作者:海康", 290, 290, true);
4. 預覽效果

C. JAVA界面開發 能否運行在linux下

當然是可以運行在linux下的。
java的代碼執行需要一個叫JVM的東東去做中轉,
換句話說有了JVM,計算機就能知道你寫的代碼叫Java。
這跟計算機用的什麼操作系統沒有關系。

Java里的桌面應用程序現在是用swing技術來做基本支撐的,就是界面設計啊之類的。
SWT也是不可獲取的一部分,主要用於事件監聽,就是什麼滑鼠點擊啊之類的。
就從這兩個部分去學吧。
他們都是JavaSE的知識。
隨便一本系統講解JavaSE的書應該都有的。

D. Linux 史上最全命令大全

1、ls命令
cd /root
ls #顯示當前目錄下所有的非隱藏文件
ls -a #顯示當前目錄下所有文件,包含隱藏文件
ls -l #顯示當前目錄下所有的非隱藏文件的詳情
ls -al #顯示當前目錄下所有文件,包含隱藏文件 的詳情
ls -lh #以列表形式顯示當前目錄下所有的非隱藏文件的大小(K M T)
ls -alh #以列表形式顯示所有文件,包含隱藏文件的文件大小(K M T)

常用的組合:
ls
ll #等價於 ls -l
ls /etc #顯示/etc目錄下的文件

2:pwd命令
用來顯示當前所在的路徑
絕對路徑: 從/目錄開始的路徑
/root
/etc/sysconf
/opt/server/data-integration/libswt/win64
相對路徑: 相對當前的路徑
3、mkdir命令
cd /root
mkdir mytest #在當前目錄創建文件夾
mkdir -p 111/222/333 #一次創建多級文件夾
mkdir /root/mydemo #使用絕對路徑來創建
mkdir mydemo2 #使用相對對路徑來創建

4、rm命令
這個命令既可以刪除文件,也可以刪除目錄
刪文件:
cd /root
rm a.txt #刪除時,會給出提醒確認,輸入y刪除,n不刪除
rm -f b.txt #強制刪除 等價於 rm -f /root/b.txt
rm ../dir2/b.txt
touch a.java b.java c.java
rm a.java b.java c.java #一次可以刪除多個文件
rm *.java -fr #可以刪除當前目錄下的所有.java文件
cd dir
rm * -fr #刪除當前目錄的所有內容
刪目錄:
rm -r 111 #刪除目錄,依次提醒刪除
rm -rf mytest #強制刪除 等價於 rm mytest -fr

常用組合:
rm -fr 文件或目錄
5、cd命令
cd 命令可以進入一個目錄,類似於對windows上的文件夾進行雙擊

cd #直接cd 可以從任何一個目錄回到/root目錄
cd /root #進入root目錄
cd /opt/server/data-integration/system/
cd .. #回到上一級目錄
cd ../.. #回到上上一級目錄
cd - #可以在最近的兩次目錄之間切換

cd /root
mdkir dir1 dir2

cd dir1
cd ../dir2 #使用相對路徑 /中國/廣東省/深圳市/寶安區/留仙二路/78號

6、歷史命令和table補全
使用上下方向鍵可以找出歷史命令
table鍵:
cd /opt/ #兩次table可以列出/opt目錄下所有的文件和子目錄
cd /opt/s #一次table可以自動補全目錄內容,前提是/opt目錄下只有一個s開頭的目錄

7、touch命令
cd /root
touch a.java #在當前目錄創建a.txt文件
touch b.java c.java #創建多個文件
touch /root/d.java #通過絕對路徑創建

8、mv命令
移動:
1、mv 文件 目錄 #將文件移動到目錄中區

cd /root/dir1
touch a.txt
mv a.txt /root/dir2 #等價於 mv a.txt ../dir2

2、 mv 目錄1 目錄2 #將目錄1移動到目錄2下面(前提是目錄2必須存在)

cd /root
mv dir2 dir1 #將dir2移動到dir1下面

重命名:
1、mv 文件1 文件2 #給文件重命名(文件2不能存在)
cd /root
mv a.txt aaa.txt #將a.txt 重命名為aaa.txt

2、mv 目錄1 目錄2 #給目錄重命名(目錄2不能存在)
cd /root
mv dir1 dirx #將dir1重命名為dirx

9、cat命令
顯示文件內容
cd /root
cat user.txt

10、cp命令
復制文件
cd /root
cp user.txt user2.txt
cp user.txt /opt/ #將當前目錄的user.txt 復制到/opt目錄,文件名保持不變
cp user.txt /opt.user2.txt #將當前目錄的user.txt 復制到/opt目錄,文件名改為user2.txt
cp /opt/server/data-integration/pan.sh ./ #將指定目錄里的文件復制到當前目錄(.後邊的/可以去掉)
cp /opt/server/data-integration/pan.sh ./dirx #將指定目錄里的文件復制到當前目錄下的dirx目錄(.後邊的/比可以去掉)
cp /opt/server/data-integration/pan.sh /root/dirx #作用同上
11、解壓壓縮
Linux的壓縮包後綴一般是: .tar.gz
解壓:
.tar.gz
將snappy-1.1.1.tar.gz上傳到/root/dir1目錄
tar -zxvf snappy-1.1.1.tar.gz #默認解壓到當前目錄
tar -xvf snappy-1.1.1.tar.gz #默認解壓到當前目錄

tar -xvf snappy-1.1.1.tar.gz -C /opt #將壓縮包解壓到/opt目錄
.zip格式
unzip mysql-connector-java-8.0.13.zip #默認解壓到當前目錄
unzip -d /opt mysql-connector-java-8.0.13.zip #解壓到指定目錄
壓縮:
.tar.gz

tar -czvf snappy-1.1.1.tar.gz snappy-1.1.1 #將snappy-1.1.1文件夾進行打包壓縮
tar -czvf /root/dir/snappy-1.1.1.tar.gz /opt/server/snappy-1.1.1

.zip格式
zip -r mysql-connector-java-8.0.13.zip mysql-connector-java-8.0.13/

12、find命令
用來實現文件的查找
find / -name 'a.txt' #從/目錄開始查找a.txt文件
find / -name 'ins*' #從/目錄開始查找以ins開頭的文件
find / -type f -size +100M #查找/目錄下文件大小大於100M的文件
13、grep命令
grep lang anaconda-ks.cfg #從anaconda-ks.cfg文件中查找包含lang的內容

14、ps命令
ps #查看依賴終端的進程
ps -ef #查看Linux系統中所有的進程

15、kill命令
kill -9 進程的pid #每次啟動進程時,pid會發生變化,但是進程運行期間pid不會變化

16、管道 |
管道就是把前邊命令的結果作為後邊命令的輸入
ps -ef | grep mysql #查找和mysql相關的進程
ll /etc | grep java #在/etc目錄中查找java相關的文件

17、用戶的操作
用戶創建和密碼設置
useradd itheima #創建新用戶itheima
passwd itheima #設置用戶itheima密碼
用戶刪除
userdel -r itheima #刪除用戶itheima

18、文件的許可權
所屬用戶: root 文件的創建者
所屬用戶組: root 和文件創建者在一個組的用戶
其他用戶: itcast 既不是文件創建者,也和文件創建者不在同一組

r: 可讀
w:可寫
x: 可執行

chmod命令:
方式1:
chmod u+rw a.txt #在所屬用戶之前的許可權基礎上添加可讀和可寫許可權
chmod u=rw a.txt #將所屬用戶的許可權直接修改為可讀,可寫
chmod +x #給所屬用戶,所屬用戶組和其他用戶全部加上可執行許可權
方式2:
chmod 777 a.txt #給所有用戶加上所有許可權

19、clear命令
用來清屏
快捷鍵: ctrl + l

20、history命令
用來查看所有的歷史命令

21:vi編輯器的使用
vi a.txt #打開a.txt文件
vim a.txt #vim是vi的增強

22、網路管理命令
hostname :查看主機名
修改主機名: /etc/hostname

ifconfig :查看ip地址
修改ip地址: /etc/sysconfig/network-scripts/ifcfg-ens33

服務問題:
service network restart

E. swt有linux版本嗎

swt沒有linux版本。
因為連MAC系統的版本都沒有linux,目前只有WindowS系統的版本,所以swt沒有linux版本。
SWT遵循操作系統平台直接支持的線程模型。

F. SWT有什麼方法可以讓生成的shell出現在最前

windows操作系統還可以利用SWT的一個小BUG來達成這種效果,如果需要支持linux則有點問題
windows的實現方式為:
1.在原窗口打開的時候創建不能獲得焦點的窗口,設置屬性為隱藏
2.需要打開不能獲得焦點的窗口時設置可見屬性為TRUE
因為在原窗口打開的時候不能獲得焦點的窗口已隱式打開,點擊按鈕時控制其顯隱,不會獲得焦點,這個其實是SWT在WINDOWS中的一個BUG,SHELL源碼有註解,而linux版沒有此BUG

G. 我在官網上下載了swt插件:/home/abc/download/swt-3.5.2-gtk-linux-x86.zip,怎麼解壓安裝

http://wenku..com/view/13b2fef67c1cfad6195fa75f.html
這個網址你看懂就行

H. 在linux下無法運行eclipse

看提示,是因為沒有安裝GTK庫出的錯誤。
如果是Ubuntu,用
sudo apt-get install build-essential gnome-core-devel pkg-config libgtk2.0-dev
如果是CentOS,用
yum install gtk+*

由於可能你沒有安裝必要的庫,後面可能還會出其他錯,需要再看清錯誤提示,再解決問題,安裝對應的庫包。

閱讀全文

與linuxswt相關的資料

熱點內容
風月片成人 瀏覽:522
女孩學樂高編程機器人 瀏覽:236
求網站 瀏覽:159
穿越平行世界多妻制 瀏覽:109
鐵雨3免費完整版視頻 瀏覽:499
墜入》中,主角小女孩為什麼摔傷了頭 瀏覽:207
交換的一天女模特 瀏覽:336
牛客網編程題答案 瀏覽:60
童玲主演的古裝電影 瀏覽:303
法國電影小男孩和白狗 瀏覽:771
大尺度吻戲推薦電影 瀏覽:97
最新巨獸電影推薦 瀏覽:925
國語版電影在線觀看 瀏覽:591
極線殺手木屋女演員 瀏覽:618
寧波程序員接私活小程序 瀏覽:492
小六壬pdf 瀏覽:14
怎麼通過快捷指令隱藏手機app 瀏覽:610
方舟手游如何辨別優質伺服器 瀏覽:117
pdf林徽因傳 瀏覽:528
國產區小電影網址 瀏覽:102