Flex home not specified

dnmcgoy's Avatar

dnmcgoy

24 Apr, 2013 11:33 PM

I'm attempting to get the sdk auto install to work and run into the "The Flex home location isn't specified" error.
I'm using auto install, the download occurs, and I can go into the .gradle/gradleFx/sdks/{hash} directory and see the unzipped sdk.

repositories {
   add(new org.apache.ivy.plugins.resolver.URLResolver()) {
      name = 'Apache'
      // pattern for url http://apache.cu.be/flex/4.9.0/binaries/apache-flex-sdk-4.9.0-bin.zip
      addArtifactPattern 'http://download.macromedia.com/pub/flex/sdk/[module]_[revision].[ext]'
   }
}

dependencies {
   merged project(':client_swc')
   flexSDK group: 'org.apache', name: 'flex_sdk', version: '4.5.1', ext: 'zip'
}

sdkAutoInstall {
    showPrompts = false
}

Note that I have to use the 4.5.1 sdk currently which is why I had to use the alternate url source for the sdk, so there may be some legacy sdk problem, but definitely have no validation of that.
I am able to download the GradleFx auto install example and run it, for more info.

  1. 1 Posted by dnmcgoy on 25 Apr, 2013 12:09 AM

    dnmcgoy's Avatar

    Small note: setting the FLEX_HOME environment variable to the path of the gradlefx install directory for the sdk (~/.gradle/gradleFx/sdks/{hash}) then running the gradle build command works. Obviously not a true solution, but at least shows that the downloaded sdk works properly.

  2. Support Staff 2 Posted by Yennick Trevels on 25 Apr, 2013 05:50 AM

    Yennick Trevels's Avatar

    Can you provide me the following information:

    • Gradle version
    • GradleFx version
    • the output of your build with info logging (add '--info' to your gradle command)
  3. 3 Posted by dnmcgoy on 29 Apr, 2013 03:36 PM

    dnmcgoy's Avatar

    Sorry for the very delayed response, have had other fires to put out.
    Here's the info :
    gradle version : 1.4 is what brew installs, but I have downloaded 1.5 and it also has the same problem
    gradlefx version : 0.6 is what I used initially, although I'm now specifying 0.6.4.. both seem to have the same problem
    I can't share the log right now, but I can share this piece of it:

    Determining SDK install location
    Setting flexHome to /Users/Donnie/.gradle/gradleFx/sdks/{hash}
    Using the Air SDK dependency
    Determining SDK install location
    All projects evaluated.
    Selected primary task 'build'
    

    This led me to try to set flexHome directly in one of the gradle files (since it seems to be attempting to point at the right place), and I find that setting that value doesn't appear to have any effect.
    If you need a full log file, I'll need to edit it a bit and send it directly, but hopefully that's the info you were curious about in the --info.

  4. Support Staff 4 Posted by Yennick Trevels on 29 Apr, 2013 06:14 PM

    Yennick Trevels's Avatar

    So what I can see in that piece of logging is that it sets flexHome in one project (the one for which you posted the config), so that looks correct, but it can't find the Flex SDK installation for the other project (client_swc).

    Both these projects should use the autoinstall configuration. You can do this by creating a parent project(directory) with a build.gradle file. This file can look like this:

    subprojects {
        apply plugin: 'gradlefx'
    
        repositories {
            add(new org.apache.ivy.plugins.resolver.URLResolver()) {
                 name = 'Apache'
                 // pattern for url http://apache.cu.be/flex/4.9.0/binaries/apache-flex-sdk-4.9.0-bin.zip
                 addArtifactPattern 'http://download.macromedia.com/pub/flex/sdk/[module]_[revision].[ext]'
            }
        }
    
        dependencies {
             flexSDK group: 'org.apache', name: 'flex_sdk', version: '4.5.1', ext: 'zip'
        }
    
       sdkAutoInstall {
            showPrompts = false
        } 
    }
    
  5. 5 Posted by dnmcgoy on 29 Apr, 2013 07:14 PM

    dnmcgoy's Avatar

    While that does need to be moved up (and that dependency is copy-pasta-ed in client_swc.. that refactoring is a little more complicated).. should that error still exist if I ran a very direct command like:

    gradle client_swc:build
    
    and the auto install dependencies are in the build.gradle for client_swc as well?

    (Therein lies one of the complications, I have a sub sub project in client_main called Main, so simply moving the dependency up one level doesn't do, and applying gradlefx as a plugin to client_main isn't right since client_main isn't producing a flash artifact). Anyway, I'm overcomplicating at this point.. and still trying to dig here, because most of this is most likely due to my environment (and there's only so much I can share unfortunately)

  6. Support Staff 6 Posted by Yennick Trevels on 29 Apr, 2013 07:36 PM

    Yennick Trevels's Avatar

    if you also specified the flexSDK dependency in the client_swc project then it should work fine.
    I'll see if I can create a reproducible case.

  7. 7 Posted by dnmcgoy on 29 Apr, 2013 07:39 PM

    dnmcgoy's Avatar

    Cool.. I'll try to come up with something very generic that reproduces my environment without anything proprietary so that we can isolate what's going on. Thanks for all your help again. Its insanely appreciated.

  8. Support Staff 8 Posted by Yennick Trevels on 01 May, 2013 07:26 AM

    Yennick Trevels's Avatar

    I created a test case with two swc based projects, with duplicated configurations for the sdk auto-install. But I can't reproduce the problem. Can you see whether the attached test case is working on your system?

  9. Yennick Trevels closed this discussion on 24 Jul, 2013 04:31 PM.

Comments are currently closed for this discussion. You can start a new one.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac