Announcement Announcement Module
Collapse
No announcement yet.
Please update maven-metadata.xml in Spring Maven Snapshot Repository Spring Social Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • Please update maven-metadata.xml in Spring Maven Snapshot Repository Spring Social

    The "Spring Social Facebook Web" artifact folder description in the Spring Maven Snapshot Repository at
    http://maven.springframework.org/sna...n-metadata.xml seems to be out of date-to-date. It doesn't reflect the most recent snapshot version of artifact spring-social-facebook-web (while I'm writing this, the most recent version is spring-social-facebook-web-1.1.0.BUILD-20120505.081509-1.jar, but the xml file points to older version 20120412.081707-97 ). Notice that the build number somehow got reset to 1 after build version 97.

    I noticed this because when currently trying to deploy sping-social-showcase, I get an exception resulting in " java.lang.ClassNotFoundException: org.springframework.social.facebook.web.Disconnect Controller ". Exactly this class was added to artifact spring-social-facebook-web only recently.

  • #2
    I'm using Eclipse / SpringSource Tool Suite with m2e (Maven plugin). It turns out to be nearly impossible to have m2e use other artifacts than the ones m2e deems to be right, as per the maven-metadata.xml declaration.

    Here is my workaround for above problem.

    I set the m2e plugin to work "offline" and deactivated the option to have m2e/Maven update Maven projects on Eclipse startup.
    I downloaded the most recent artifact jar from the snapshot repository, copied it to my local user repository (the " .m2 " directory) to the appropriate subfolder. Then I edited the relevant maven-metadata-org.springframework.maven.snapshot.xml to reflect the most recent version. Finally, back in Eclipse, I selected the project, right-click -> Maven -> Update Dependencies...

    Comment


    • #3
      That's an interesting problem, and I'll look into it. My initial thought is that this might be related to a recent change in how Spring Social is built (I switched it from an old clumsy build that required a Git submodule to one that is a bit more elegant and is the same process used by the Spring Framework proper.) Looking at the date on those snapshots, I've all but confirmed that the new build is related; it was on 4/12/2012 that I did that build switch.

      I'll take a look and let you know when it's resolved.

      Comment


      • #4
        I believe that the problem here is that after I switched to the new build, the new repository is at repo.springsource.org instead of maven.springframework.org. But, I never changed the samples or docs to use the new repo.

        I've confirmed that with Spring Social Showcase. I cleared Spring Social Facebook Web out of my local repo and got a failed build with an error complaining about DisconnectController. I then cleared the local repo again, switched the pom.xml file to point to repo.springsource.org and got a successful build.

        I've gone ahead and pushed the pom.xml for Spring Social Showcase. I'll be adjusting the other samples momentarily. Can you confirm that this change fixes the Showcase sample?

        Comment


        • #5
          Thank you for reacting so quickly and competently!

          I checked out the new spring-social-showcase version. At first I got new problems/regression bugs, which I were able to fix the following way (one fix to be done on my development environment, one fix to be done on the spring-social-showcase codebase).
          • Even though the updated pom.xml now points to the http://repo.springsource.org repos, my machine's local Maven still deemed the (old) local social artifacts as fresher. This caused my local Maven not to download the fresher versions. I was able to fix this probem by deleting my local Spring Social artifact folder at homedirectory\.m2\repository\org\springframework\s ocial , then updating the Maven dependencies.
          • Both the old and the updated pom.xml versions use <org.springframework.social.linkedin-version>1.0.0.RC1</org.springframework.social.linkedin-version> . The 1.0.0.RC1 version of the spring-social-linkedin artifact is only available at the old maven.springframework.org milestone repo. It isn't available at Maven Central or in the new http://repo.springsource.org repos. Therefore, the build will fail on a virgin local Maven. To fix this problem, I changed the artifact version to <org.springframework.social.linkedin-version>1.0.0.BUILD-SNAPSHOT</org.springframework.social.linkedin-version> . I suggest updating the pom.xml in the git repository (though I haven't done any tests regarding showcase's LinkedIn functionality).

          Having fixed my development environment and the codebase as described above, I was able to build and deploy spring-social-showcase to my local VMware vFabric tc Server Developer Edition v2.6. With a few GAE-specific edits, I was also able to build and deploy spring-social-showcase to Google App Engine's local Development Server and a cloudy GAE Appspot account.

          I could imagine that other samples also depend on artifacts that no longer exist at the new repos, causing build errors as pointed out above.

          Comment


          • #6
            First, you're right...I should've mentioned that you'd need to clear out your local repository.

            As for the missing RC1...I did some digging to try to figure that one out. Unfortunately, there does seem to be something out of sorts with the new build and snapshots. I'm working through that to get it resolved. Once it is resolved, I may need to change the pom.xml file again to reference a different set of repositories (believe it or not, there are *several* repositories to choose from and the one I've changed it to may not be the right one). And in many of those cases, the maven-metadata.xml is still not right.

            Once I get it all sorted out I'll let you know...in the meantime, using the LinkedIn snapshot build should work fine.

            Comment


            • #7
              Hi everyone,
              I am also using the Spring Social Facebook SNAPSHOT repository and noticed a few days ago that the artifact wasn't updated since April 12. Here's the workaround I am doing till the problem is fixed (just in case somebody is interested, since I guess it's the usual way to do it):
              1. Delete the current Spring Social Facebook artifact from your local repository:
              rm -rf ~/.m2/repository/org/springframework/social/spring-social-facebook/
              2. Download the version (propably the latest one) from http://repo.springsource.org/libs-sn...UILD-SNAPSHOT/
              3. Run the following command:
              mvn install:install-file -Dfile=<path to the downloaded artifact> -DgroupId=org.springframework.social -DartifactId=spring-social-facebook -Dversion=1.1.0.BUILD-SNAPSHOT -Dpackaging=jar
              This will install the artifact to your local repository.
              4. Update your dependencies within Eclipse if you're using m2eclipse

              After those steps are done, everything should work properly using the newest version of Spring Social Facebook.

              Comment


              • #8
                Bear with me...we're working through this and hope to have a resolution soon. I'll let you know once the builds are working again.

                Comment


                • #9
                  Okay, I believe all of these issues have been addressed. I recommend that you pull the latest Spring Social Showcase and clear out the Spring Social portion of your local Maven repository and give it another try. I've done empty-repository testing on my machine and it has worked fine, but please let me know if you run into any troubles.

                  Comment


                  • #10
                    At least for me it worked. Thanks for the fast response!

                    Comment

                    Working...
                    X