Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gradle configuration #12

Closed
wants to merge 1 commit into from
Closed

Conversation

tomrozb
Copy link

@tomrozb tomrozb commented Jun 5, 2014

Add to README configuration for Gradle

Add to README configuration for Gradle
@saudet
Copy link
Member

saudet commented Jun 5, 2014

Hey, thanks! Although, since this concerns pretty much all the projects, I've started to put that kind of info on the portal here:
http://bytedeco.org/download/
So, we could put the Gradle equivalent there, what do you think? It doesn't work for 0.8 yet though because of the non-optional packages, but well whatever, gotta start somewhere.

@tomrozb
Copy link
Author

tomrozb commented Jun 6, 2014

I didn't know about this page. It's your choice whether merge this or not. Most projects contains maven/gradle configuration in their README files, that's why I've pushed this pull request.

@saudet
Copy link
Member

saudet commented Jun 6, 2014

Right, but most projects have one or two artifacts. If we put everything for Maven, Gradle, and SBT, we end up with something like 200 lines, half the README file. Do you feel that is the right place to put this info anyway? Most users of JavaCV don't seem to use either Maven, Gradle, or SBT, so I would say no, but let me know what you think. Thanks for your input!

@tomrozb
Copy link
Author

tomrozb commented Jun 7, 2014

I'm sure quite few Android applications use JavaCV and the Maven or Gradle is the build tool used to build the app. It's far better to define dependencies in pom.xml/build.gradle than to copy jars into libs folder of the project. If you still think a better place for this config is http://bytedeco.org/download/, just close this PR with appropriate comment.

@saudet
Copy link
Member

saudet commented Jun 9, 2014

I think I'd like to do it this way: We put everything at http://bytedeco.org/download/, but we include a URL in the README.md files, just in case. The thing is, IMO, people are unlikely to read the README.md files if they have already downloaded it, so that seems to make most sense to me. What do you think?

@tomrozb
Copy link
Author

tomrozb commented Jun 10, 2014

If someone has downloaded the binaries from bytedecom.com site one doesn't need Gradle/Maven configuration any more (because one has already all dependencies). The configuration is for anyone who wants to incorporate JavaCV in a very easy way - it means without downloading any files then unpacking etc. Just add 3 lines into your project and all it set up. But as I wrote earlier, it's up to you how you provide the dependencies. IMO providing gradle/maven config should be the first thing and downloadable binaries as a last resort solution.

@saudet
Copy link
Member

saudet commented Jun 10, 2014

"Just add 3 lines into your project" => You're missing the whole point. It's not just 3 lines, it's more like 200 lines. Your 3 lines are entirely incomplete! Please go see here http://bytedeco.org/download/ to make your 3 lines more complete. And so I'll repeat my question, but do you feel that is it fully appropriate to put 200 lines of dependencies in the README file? I would really like to know your opinion about that, because it's not just my project, but your project and everyone else's project as well, so I want to know a bit more about how everyone feels, that's all. Thanks for your input!

@tomrozb
Copy link
Author

tomrozb commented Jun 11, 2014

Oh, you are talking about maven configuration with native libraries. I have one jar with all the libraries in my artifactory repo + 3 lines and that's it for gradle. You're right probably the README file isn't the best place for such long config.

@saudet
Copy link
Member

saudet commented Jun 15, 2014

I've figured out a better way to go about this I think:
bytedeco/javacpp-presets@ee8d6f7
27c06fd

Basically, we let JavaCV get all its dependencies, but I've added a new platform.dependency property in the JavaCPP Presets to specify the classifier of the artifacts containing native libraries. This should work better with Gradle, but I haven't tested it. In any case, that would fit in the README file. Let me know if it works well, thanks!

@tomrozb
Copy link
Author

tomrozb commented Jul 10, 2014

I'm sorry I missed your reply. Does your commit change anything for Gradle config?

@saudet
Copy link
Member

saudet commented Jul 10, 2014

Yes, so it would be a good idea to test it out before the next release if possible...

@tomrozb
Copy link
Author

tomrozb commented Jul 11, 2014

Could you provide the new Gradle config? I can't figure out what to change just looking at the source changes you've made.

@saudet
Copy link
Member

saudet commented Jul 11, 2014

I didn't test it, but this should work:

platform.dependency = 'android-arm'
dependencies {
    compile group: 'org.bytedeco', name: 'javacv', version: '0.8-2-SNAPSHOT'
}

Let me know if you run into any problems, thanks!

@saudet
Copy link
Member

saudet commented Aug 4, 2014

I've added something along those lines in the README.md file of version 0.9. Please let me know that it works fine! And thanks for the suggestion.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants