resource linking failed in AndroidManifest.xml when using sourceSets










1















I am trying to run an Android Studio project, but I keep getting 'Android resource linking failed' error for values in the AndroidManifest.xml.



Resource linking error



enter image description here



When I remove the sourceSets from the build.gradle it solves this problem but breaks imports of the files referenced in the sourceSets.



The sourceSets in build.gradle look like this:



sourceSets 
main
res.srcDirs =
[
'/src/main/res/layouts/administrator',
'/src/main/res/layouts/dashboard',
'/src/main/res/layouts/location_information',
'/src/main/res/layouts/login',
'/src/main/res/layouts/map',
'/src/main/res/layouts/non_activity',
'/src/main/res/layouts/register_location',
'/src/main/res/layouts/start_up',
'/src/main/res/layouts',
'/src/main/res'
]




The Android Manifest looks like this:



AndroidManifest cannot resolve @string



enter image description here



Is there some other way I should be accessing the values in the AndroidManifest other than @string... ?



I have tried various build tools versions and disabling AAPT2. Any help on resolving these linking issues would be appreciated.



Top of build.gradle:



compileSdkVersion 28
buildToolsVersion "28.0.3"
defaultConfig
applicationId "com.example.example"
minSdkVersion 16
targetSdkVersion 26
versionCode 4
versionName "1.3.1"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = true










share|improve this question
























  • Why are you walking all the paths in your layouts? I have no idea why you would ever need to do that. Please provide clarity as to what you are trying to accomplish and why you are walking the res paths. As you don't set res paths unless you are using an outdated structure or a hybrid tool that is using an outdated structure.

    – Sam
    Nov 13 '18 at 13:39











  • This is a project I have taken over, I am not sure why it is laid out like this. I am just wondering how the resources should be accessed in the AndoidManifest if this is the set up? Would I be better off restructuring?

    – declan
    Nov 13 '18 at 13:43











  • I would, yeah. You should use the natural folder structure or you will be fighting little one-off errors like this when it comes down to testing and unit testing and flavors later. The natural structure of a new android project is very easy to follow. Just create a new project to see how it should be laid out. Then start moving yours to match it. Once they match delete the res-dir snippet from your gradle. That will probably clear you up.

    – Sam
    Nov 13 '18 at 13:55















1















I am trying to run an Android Studio project, but I keep getting 'Android resource linking failed' error for values in the AndroidManifest.xml.



Resource linking error



enter image description here



When I remove the sourceSets from the build.gradle it solves this problem but breaks imports of the files referenced in the sourceSets.



The sourceSets in build.gradle look like this:



sourceSets 
main
res.srcDirs =
[
'/src/main/res/layouts/administrator',
'/src/main/res/layouts/dashboard',
'/src/main/res/layouts/location_information',
'/src/main/res/layouts/login',
'/src/main/res/layouts/map',
'/src/main/res/layouts/non_activity',
'/src/main/res/layouts/register_location',
'/src/main/res/layouts/start_up',
'/src/main/res/layouts',
'/src/main/res'
]




The Android Manifest looks like this:



AndroidManifest cannot resolve @string



enter image description here



Is there some other way I should be accessing the values in the AndroidManifest other than @string... ?



I have tried various build tools versions and disabling AAPT2. Any help on resolving these linking issues would be appreciated.



Top of build.gradle:



compileSdkVersion 28
buildToolsVersion "28.0.3"
defaultConfig
applicationId "com.example.example"
minSdkVersion 16
targetSdkVersion 26
versionCode 4
versionName "1.3.1"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = true










share|improve this question
























  • Why are you walking all the paths in your layouts? I have no idea why you would ever need to do that. Please provide clarity as to what you are trying to accomplish and why you are walking the res paths. As you don't set res paths unless you are using an outdated structure or a hybrid tool that is using an outdated structure.

    – Sam
    Nov 13 '18 at 13:39











  • This is a project I have taken over, I am not sure why it is laid out like this. I am just wondering how the resources should be accessed in the AndoidManifest if this is the set up? Would I be better off restructuring?

    – declan
    Nov 13 '18 at 13:43











  • I would, yeah. You should use the natural folder structure or you will be fighting little one-off errors like this when it comes down to testing and unit testing and flavors later. The natural structure of a new android project is very easy to follow. Just create a new project to see how it should be laid out. Then start moving yours to match it. Once they match delete the res-dir snippet from your gradle. That will probably clear you up.

    – Sam
    Nov 13 '18 at 13:55













1












1








1


1






I am trying to run an Android Studio project, but I keep getting 'Android resource linking failed' error for values in the AndroidManifest.xml.



Resource linking error



enter image description here



When I remove the sourceSets from the build.gradle it solves this problem but breaks imports of the files referenced in the sourceSets.



The sourceSets in build.gradle look like this:



sourceSets 
main
res.srcDirs =
[
'/src/main/res/layouts/administrator',
'/src/main/res/layouts/dashboard',
'/src/main/res/layouts/location_information',
'/src/main/res/layouts/login',
'/src/main/res/layouts/map',
'/src/main/res/layouts/non_activity',
'/src/main/res/layouts/register_location',
'/src/main/res/layouts/start_up',
'/src/main/res/layouts',
'/src/main/res'
]




The Android Manifest looks like this:



AndroidManifest cannot resolve @string



enter image description here



Is there some other way I should be accessing the values in the AndroidManifest other than @string... ?



I have tried various build tools versions and disabling AAPT2. Any help on resolving these linking issues would be appreciated.



Top of build.gradle:



compileSdkVersion 28
buildToolsVersion "28.0.3"
defaultConfig
applicationId "com.example.example"
minSdkVersion 16
targetSdkVersion 26
versionCode 4
versionName "1.3.1"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = true










share|improve this question
















I am trying to run an Android Studio project, but I keep getting 'Android resource linking failed' error for values in the AndroidManifest.xml.



Resource linking error



enter image description here



When I remove the sourceSets from the build.gradle it solves this problem but breaks imports of the files referenced in the sourceSets.



The sourceSets in build.gradle look like this:



sourceSets 
main
res.srcDirs =
[
'/src/main/res/layouts/administrator',
'/src/main/res/layouts/dashboard',
'/src/main/res/layouts/location_information',
'/src/main/res/layouts/login',
'/src/main/res/layouts/map',
'/src/main/res/layouts/non_activity',
'/src/main/res/layouts/register_location',
'/src/main/res/layouts/start_up',
'/src/main/res/layouts',
'/src/main/res'
]




The Android Manifest looks like this:



AndroidManifest cannot resolve @string



enter image description here



Is there some other way I should be accessing the values in the AndroidManifest other than @string... ?



I have tried various build tools versions and disabling AAPT2. Any help on resolving these linking issues would be appreciated.



Top of build.gradle:



compileSdkVersion 28
buildToolsVersion "28.0.3"
defaultConfig
applicationId "com.example.example"
minSdkVersion 16
targetSdkVersion 26
versionCode 4
versionName "1.3.1"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = true







java android android-studio gradle android-gradle






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 14 '18 at 2:24









p.alexey

691513




691513










asked Nov 13 '18 at 13:02









declandeclan

112




112












  • Why are you walking all the paths in your layouts? I have no idea why you would ever need to do that. Please provide clarity as to what you are trying to accomplish and why you are walking the res paths. As you don't set res paths unless you are using an outdated structure or a hybrid tool that is using an outdated structure.

    – Sam
    Nov 13 '18 at 13:39











  • This is a project I have taken over, I am not sure why it is laid out like this. I am just wondering how the resources should be accessed in the AndoidManifest if this is the set up? Would I be better off restructuring?

    – declan
    Nov 13 '18 at 13:43











  • I would, yeah. You should use the natural folder structure or you will be fighting little one-off errors like this when it comes down to testing and unit testing and flavors later. The natural structure of a new android project is very easy to follow. Just create a new project to see how it should be laid out. Then start moving yours to match it. Once they match delete the res-dir snippet from your gradle. That will probably clear you up.

    – Sam
    Nov 13 '18 at 13:55

















  • Why are you walking all the paths in your layouts? I have no idea why you would ever need to do that. Please provide clarity as to what you are trying to accomplish and why you are walking the res paths. As you don't set res paths unless you are using an outdated structure or a hybrid tool that is using an outdated structure.

    – Sam
    Nov 13 '18 at 13:39











  • This is a project I have taken over, I am not sure why it is laid out like this. I am just wondering how the resources should be accessed in the AndoidManifest if this is the set up? Would I be better off restructuring?

    – declan
    Nov 13 '18 at 13:43











  • I would, yeah. You should use the natural folder structure or you will be fighting little one-off errors like this when it comes down to testing and unit testing and flavors later. The natural structure of a new android project is very easy to follow. Just create a new project to see how it should be laid out. Then start moving yours to match it. Once they match delete the res-dir snippet from your gradle. That will probably clear you up.

    – Sam
    Nov 13 '18 at 13:55
















Why are you walking all the paths in your layouts? I have no idea why you would ever need to do that. Please provide clarity as to what you are trying to accomplish and why you are walking the res paths. As you don't set res paths unless you are using an outdated structure or a hybrid tool that is using an outdated structure.

– Sam
Nov 13 '18 at 13:39





Why are you walking all the paths in your layouts? I have no idea why you would ever need to do that. Please provide clarity as to what you are trying to accomplish and why you are walking the res paths. As you don't set res paths unless you are using an outdated structure or a hybrid tool that is using an outdated structure.

– Sam
Nov 13 '18 at 13:39













This is a project I have taken over, I am not sure why it is laid out like this. I am just wondering how the resources should be accessed in the AndoidManifest if this is the set up? Would I be better off restructuring?

– declan
Nov 13 '18 at 13:43





This is a project I have taken over, I am not sure why it is laid out like this. I am just wondering how the resources should be accessed in the AndoidManifest if this is the set up? Would I be better off restructuring?

– declan
Nov 13 '18 at 13:43













I would, yeah. You should use the natural folder structure or you will be fighting little one-off errors like this when it comes down to testing and unit testing and flavors later. The natural structure of a new android project is very easy to follow. Just create a new project to see how it should be laid out. Then start moving yours to match it. Once they match delete the res-dir snippet from your gradle. That will probably clear you up.

– Sam
Nov 13 '18 at 13:55





I would, yeah. You should use the natural folder structure or you will be fighting little one-off errors like this when it comes down to testing and unit testing and flavors later. The natural structure of a new android project is very easy to follow. Just create a new project to see how it should be laid out. Then start moving yours to match it. Once they match delete the res-dir snippet from your gradle. That will probably clear you up.

– Sam
Nov 13 '18 at 13:55












0






active

oldest

votes











Your Answer






StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");

StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













draft saved

draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53281612%2fresource-linking-failed-in-androidmanifest-xml-when-using-sourcesets%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























0






active

oldest

votes








0






active

oldest

votes









active

oldest

votes






active

oldest

votes















draft saved

draft discarded
















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid


  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53281612%2fresource-linking-failed-in-androidmanifest-xml-when-using-sourcesets%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







這個網誌中的熱門文章

Barbados

How to read a connectionString WITH PROVIDER in .NET Core?

Node.js Script on GitHub Pages or Amazon S3