solidarity icon indicating copy to clipboard operation
solidarity copied to clipboard

build.gradle not found

Open kevinvangelder opened this issue 5 years ago • 11 comments

Solidarity & solidarity-react-native are installed globally. solidarity snapshot worked fine, but solidarity returns:

✖ ./android/app/build.gradle not found
/Users/kvg/.config/yarn/global/node_modules/gluegun/build/index.js:13
    throw up;
    ^

TypeError: Cannot read property 'getAndroidSDKInfo' of undefined
    at module.exports (/Users/kvg/code/apps/project/node_modules/solidarity-react-native/extensions/helpers/getAndroidEnvData.js:16:37)

kevinvangelder avatar Dec 29 '18 00:12 kevinvangelder

I think this should fix it. https://github.com/infinitered/solidarity-react-native/pull/30

This was my bad. Upgraded envinfo in solidarity but not its usage in this plugin. 🤦‍♂️

tabrindle avatar Dec 29 '18 02:12 tabrindle

@tabrindle @kevinvangelder I'm still experiencing this issue with the following deps:

   "solidarity": "^2.3.1",
   "solidarity-react-native": "^2.1.2"

Pushplaybang avatar Feb 23 '19 00:02 Pushplaybang

I'm also still getting this.

   "solidarity": "^2.3.1",
   "solidarity-react-native": "^2.1.2"

I've got my android sdk path setup in ./android/local.properties

the Android section of my snapshot is reading as:


    "Android": [
      {
        "rule": "env",
        "variable": "ANDROID_HOME",
        "error": "The ANDROID_HOME environment variable must be set to your local SDK.  Refer to getting started docs for help."
      },
      {
        "rule": "custom",
        "plugin": "React Native",
        "name": "androidVersion"
      }
    ],

Solidarity is spitting out this error:

✖ The ANDROID_HOME environment variable must be set to your local SDK.  Refer to getting started docs for help.
✖ ./android/app/build.gradle not found

Solidarity checks failed.
error Command failed with exit code 1.

If I remove the Android section from the snapshot, everything passes, but that's obviously a less than ideal solution.

is343 avatar Mar 25 '19 05:03 is343

Sorry for the delay on this. I'll be trying to take a look at this whenever I can.

I don't think that the current code actually adheres to local.properties, but it wouldn't be hard to add it if not. Would you be interested in adding that code? I'd be happy to assist you. If not, I'll keep it on my TODO, and update when I can take care of it.

GantMan avatar Apr 02 '19 02:04 GantMan

@GantMan sure, I can do that. Would you mind helping me get started by pointing to where the logic is, or a general idea on what needs to be done?

is343 avatar Apr 02 '19 03:04 is343

Yup!

So in solidarity-react-native located here: https://github.com/infinitered/solidarity-react-native

All the code for checking is here: https://github.com/infinitered/solidarity-react-native/blob/master/extensions/react-native.js

I hope this helps. Feel free to ask questions as you get started.

GantMan avatar Apr 05 '19 04:04 GantMan

As @tabrindle mentioned above you can change following lines of code in directory

1st file to modify

node_module/solidarity-react-native/react-native.js

add **await ** before getAndroidEnvData

check: async (rule, context) => {
          const {
            androidAppGradle,
            availableApiVersions,
            availableBuildToolsVersions,
            projectApiVersion,
            projectBuildToolsVersion
          } = await  getAndroidEnvData(context); 

2nd place to add in same file

report: async (rule, context, report) => {
          const { print } = context;
          const { colors } = print;
          const {
            androidAppGradle,
            availableApiVersions,
            availableBuildToolsVersions,
            projectApiVersion,
            projectBuildToolsVersion
          } = await getAndroidEnvData(context);

2nd File to Modify

node_module/solidarity-react-native/helpers/getAndroidEnvData.js changes these lines

 availableApiVersions: androidData["API Levels"],
      availableBuildToolsVersions: androidData["Build Tools"],

like following

availableApiVersions: androidData[1]["API Levels"],
 availableBuildToolsVersions: androidData[1]["Build Tools"],

kaushal9678 avatar Jul 24 '19 08:07 kaushal9678

Thanks @kaushal9678. Should we merge this ?

loiclouvet avatar Sep 28 '19 17:09 loiclouvet

Will this be fixed?

FrederickEngelhardt avatar Jan 29 '20 05:01 FrederickEngelhardt

Would you like to send the PR? As long as it passes the tests, we can merge.

GantMan avatar Jan 29 '20 15:01 GantMan

Thanks, this fix works for me as well 👍🏼

anfriis avatar Aug 07 '20 11:08 anfriis