Eclipse下同一個項目如何適應多語言

來源:互聯網
上載者:User

目前在開發過程中,同一個項目需要使用到多個語言的問題,如果建立不同的項目有需要進行整合,非常不方便,

後來想如何在同一個項目下進行多語言互動式開發。

通過對eclipse的研究找到了相應的解決方式,特分享之。

為什麼有這樣的想法,是因為在使用的hive過程中,針對不同的業務情境,有java代碼編寫udf,有python代碼處理指令碼等,如果分成不同的項目進行,在後期進行整合有覺得不方便,如何就在eclipse進行簡單的切換就能到相應的開發環境中進行編寫代碼,如下圖:

 通過紅色方式。

 

第一步驟:

建立一個java項目,建立一個python項目。

java項目下面會產生:.project檔案和.classpath檔案

該檔案裡主要內容如下:

<?xmlversion="1.0"encoding="UTF-8"?>

<projectDescription>

<name>java_project</name>

<comment></comment>

<projects>

</projects>

<buildSpec>

<buildCommand>

<name>org.eclipse.jdt.core.javabuilder</name>

<arguments>

</arguments>

</buildCommand>

</buildSpec>

<natures>

<nature>org.eclipse.jdt.core.javanature</nature>

</natures>

</projectDescription>


這裡忽略.classpath的內容,

因為在合并的時候,該檔案一般無需修改(這裡都是設定lib路徑、.class檔案產生路徑、源碼代碼路徑等。開啟後,自己看吧,很簡單的)


然後在.settings目錄下有個檔案:org.eclipse.core.resources.prefs

內容如下:

#Mon Oct 15 11:56:40 CST 2012

eclipse.preferences.version=1

org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled

org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6

org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve

org.eclipse.jdt.core.compiler.compliance=1.6

org.eclipse.jdt.core.compiler.debug.lineNumber=generate

org.eclipse.jdt.core.compiler.debug.localVariable=generate

org.eclipse.jdt.core.compiler.debug.sourceFile=generate

org.eclipse.jdt.core.compiler.problem.assertIdentifier=error

org.eclipse.jdt.core.compiler.problem.enumIdentifier=error

org.eclipse.jdt.core.compiler.source=1.6

python項目下產生兩個檔案:.project和.pydevproject

.project檔案裡主要內容如下:

<?xmlversion="1.0"encoding="UTF-8"?>

<projectDescription>

<name>py_project</name>

<comment></comment>

<projects>

</projects>

<buildSpec>

<buildCommand>

<name>org.python.pydev.PyDevBuilder</name>

<arguments>

</arguments>

</buildCommand>

</buildSpec>

<natures>

<nature>org.python.pydev.pythonNature</nature>

</natures>

</projectDescription>

.pydevproject檔案裡主要內容如下:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>

<?eclipse-pydev version="1.0"?>


<pydev_project>

<pydev_pathproperty name="org.python.pydev.PROJECT_SOURCE_PATH">

<path>/py_project</path>

</pydev_pathproperty>

<pydev_property name="org.python.pydev.PYTHON_PROJECT_VERSION">python 2.7</pydev_property>

<pydev_property name="org.python.pydev.PYTHON_PROJECT_INTERPRETER">Default</pydev_property>

</pydev_project>


然後在.settings目錄下有個檔案:org.eclipse.core.resources.prefs

#Mon Oct 15 11:56:40 CST 2012

eclipse.preferences.version=1

encoding/<project>=UTF-8



第二個步驟: 將兩個項目下這幾個檔案進行並集處理(相同的檔案進行合并,不相同的就增加)


這裡以將python項目合并到java中為例。

那麼這樣org.eclipse.core.resources.prefs合并後的內容如下:

#Mon Oct 15 11:56:40 CST 2012

eclipse.preferences.version=1

org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled

org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6

org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve

org.eclipse.jdt.core.compiler.compliance=1.6

org.eclipse.jdt.core.compiler.debug.lineNumber=generate

org.eclipse.jdt.core.compiler.debug.localVariable=generate

org.eclipse.jdt.core.compiler.debug.sourceFile=generate

org.eclipse.jdt.core.compiler.problem.assertIdentifier=error

org.eclipse.jdt.core.compiler.problem.enumIdentifier=error

org.eclipse.jdt.core.compiler.source=1.6

encoding/<project>=UTF-8

.project檔案合并後的內容如下:

<?xmlversion="1.0"encoding="UTF-8"?>

<projectDescription>

<name>java_project</name>

<comment></comment>

<projects>

</projects>

<buildSpec>

<buildCommand>

<name>org.eclipse.jdt.core.javabuilder</name>

<arguments>

</arguments>

</buildCommand>

<buildCommand>

<name>org.python.pydev.PyDevBuilder</name>

<arguments>

</arguments>

</buildCommand>

</buildSpec>

<natures>

<nature>org.eclipse.jdt.core.javanature</nature>

<nature>org.python.pydev.pythonNature</nature>

</natures>

</projectDescription>

將.pydevproject拷貝到跟.project檔案同級目錄下即可。

這裡需要注意:

.project檔案裡的<name>值

.pydevproject檔案裡的<path>值

這兩個值跟項目名稱有關。


上述操作完成後,就完成了同一個項目切換多個語言開發環境。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.