日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > Android >内容正文

Android

在java中添加源_关于Java:如何在Android Studio中添加链接的源文件夹?

發(fā)布時(shí)間:2023/12/10 Android 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 在java中添加源_关于Java:如何在Android Studio中添加链接的源文件夹? 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在Eclipse中,我可以將源文件夾作為"鏈接的源文件夾"添加到我的android項(xiàng)目中。 如何在Android Studio中實(shí)現(xiàn)同一目的?

或者是否可以添加外部文件夾以構(gòu)建gradle?

在您的build.gradle中將以下內(nèi)容添加到android節(jié)點(diǎn)的末尾

android {

....

....

sourceSets {

main.java.srcDirs += 'src/main/'

}

}

真的很有幫助。為什么將sourceSets放在android的范圍內(nèi)?我的dependencies沒(méi)了。

但是此解決方案僅處理Java文件。那么src下的所有資源-可繪制,布局,字符串等呢?如何將它們放在外部文件夾中?

對(duì)于appengine,sourceSet必須位于根級(jí)別-不能嵌套在其中。奇怪的是,這將是android模塊的一種方式,而appengine模塊的另一種方式。

我認(rèn)為它不支持Eclipse的include / exclude選項(xiàng)。太糟糕了。

我的build.gradle中沒(méi)有android塊。我應(yīng)該加嗎?

@Deckard模塊" app"的build.gradle中應(yīng)該有一個(gè)android塊,而不是在根構(gòu)建文件中。

請(qǐng)注意,也可以使用絕對(duì)路徑-目錄然后出現(xiàn)在Android Studio中現(xiàn)有" src"目錄的旁邊,而不是內(nèi)部。當(dāng)將它們內(nèi)部符號(hào)鏈接并添加為源目錄時(shí),將出現(xiàn)"重復(fù)類"錯(cuò)誤。另請(qǐng)參閱我對(duì)symlink答案的評(píng)論。

@GyRo您可以對(duì)資源文件執(zhí)行相同的操作:在sourceSets中添加行main.res.srcDirs +=

我不知道什么是" Anrdriod節(jié)點(diǎn)"。現(xiàn)在您的分?jǐn)?shù)是-1。

正確的答案是:

android {

....

....

sourceSets {

main.java.srcDirs += 'src/main/'

}

}

此外,如果您的外部源目錄不在src/main下,則可以使用如下相對(duì)路徑:

sourceSets {

main.java.srcDirs += 'src/main/../../../'

}

關(guān)于相對(duì)路徑-我想知道是否可以使用某種gradle變量,例如。 srcDirs + =" $(ProjectDir)/ mylib / src"?我是Gradle的新手,不知道它是否支持這樣的功能。

您可以省略srcmain....前綴,因?yàn)檫@些點(diǎn)會(huì)取消路徑分量。

@BrianWhite如何在另一臺(tái)機(jī)器上指定來(lái)源集? sourceSets { main.java.srcDirs += srcmain\\10.51.70.21\me\myco\apps\myapp\src }

我不希望您能夠這樣做,因?yàn)閾?jù)我所知,它只是使用操作系統(tǒng)open()來(lái)訪問(wèn)文件。您可以使用nfs或smb之類的方法將遠(yuǎn)程目錄直接安裝到文件系統(tǒng)中,但這并不是特定于Android Studio的。

以防萬(wàn)一有人感興趣,這里有一個(gè)完整的Java模塊gradle文件,可正確生成并引用所構(gòu)建的工件

在Android多模塊應(yīng)用程序中

buildscript {

repositories {

maven {

url"https://plugins.gradle.org/m2/"

}

}

dependencies {

classpath"net.ltgt.gradle:gradle-apt-plugin:0.15"

}

}

apply plugin:"net.ltgt.apt"

apply plugin:"java-library"

apply plugin:"idea"

idea {

module {

sourceDirs += file("$buildDir/generated/source/apt/main")

testSourceDirs += file("$buildDir/generated/source/apt/test")

}

}

dependencies {

// Dagger 2 and Compiler

compile"com.google.dagger:dagger:2.15"

apt"com.google.dagger:dagger-compiler:2.15"

compile"com.google.guava:guava:24.1-jre"

}

sourceCompatibility ="1.8"

targetCompatibility ="1.8"

雖然sourceSets允許您包括整個(gè)目錄結(jié)構(gòu),但無(wú)法在Android Studio(從1.2版開始)中排除其中的部分內(nèi)容,如下所述:Android Studio是否從構(gòu)建中排除類?

在更新Android Studio以支持Android來(lái)源的include / exclude指令之前,Symlinks會(huì)很好地工作。如果使用Windows,則本機(jī)工具(例如junction或mklink)可以完成Un * x符號(hào)鏈接。 CygWin也可以稍加強(qiáng)制性地創(chuàng)建它們。請(qǐng)參閱:Windows中的Git符號(hào)鏈接和如何在Windows 7中使用cygwin進(jìn)行符號(hào)鏈接

不幸的是,我在Android Studio 2.1.2中通過(guò)符號(hào)鏈接得到以下行為:文件顯示在項(xiàng)目文件旁邊,并且具有干凈的版本,并且可以正常工作。但是在符號(hào)鏈接目錄中進(jìn)行更改后的每個(gè)常規(guī)構(gòu)建都會(huì)產(chǎn)生gradle錯(cuò)誤:"無(wú)法找到源Java類:// MyClass.java,因?yàn)樗粚儆谌魏卧茨夸?#xff1a;[ src目錄,包括" ... / src / main / java",其中符號(hào)鏈接位于軟件包文件夾中]"。

@ user905686是的!天啊。我花了幾個(gè)小時(shí)才發(fā)現(xiàn)其他人也遇到了同樣的問(wèn)題。就像您說(shuō)的那樣,符號(hào)鏈接可以進(jìn)行干凈的"重建",但不能在后續(xù)運(yùn)行中使用。它太費(fèi)時(shí)間了,因此我剛剛更新了設(shè)置以引用實(shí)際目錄而不是符號(hào)鏈接。有點(diǎn)痛苦,但是它使開發(fā)速度更快。

我已經(jīng)添加了錯(cuò)誤報(bào)告issuetracker.google.com/issues/65343978,但是我不確定是否將其作為錯(cuò)誤接受。

您可以將源文件夾添加到構(gòu)建腳本中,然后進(jìn)行同步。在此處的文檔中查找sourceSets:http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Basic-Project

我還沒(méi)有找到添加測(cè)試源文件夾的好方法。我已將源手動(dòng)添加到.iml文件中。當(dāng)然,這意味著它將在每次同步構(gòu)建腳本時(shí)消失。

如果您不使用gradle(例如,通過(guò)APK創(chuàng)建項(xiàng)目),則可以通過(guò)Android Studio UI(從3.3.2版開始)進(jìn)行操作:

右鍵單擊項(xiàng)目的根目錄,選擇Open Module Settings

點(diǎn)擊+ Add Content Root按鈕(右中)

添加您的路徑并點(diǎn)擊OK

以我的經(jīng)驗(yàn)(使用本機(jī)代碼),只要您的.so是用調(diào)試符號(hào)構(gòu)建的并且來(lái)自相同的絕對(duì)路徑,就會(huì)自動(dòng)識(shí)別源文件中添加的斷點(diǎn)。

總結(jié)

以上是生活随笔為你收集整理的在java中添加源_关于Java:如何在Android Studio中添加链接的源文件夹?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。