title: Library dependencies compatibility for non-commercial use
body: <p>I am currently doing my graduate studies with focus on data analysis/informatics in research context and develop utility tools for global research community, with an overwhelming majority of my intended users being rather computer-newbies. In other words, most of my users wouldn't bother (or be able to) gather necessary dependencies and put them in their classpaths. In order to avoid people ignoring my software I have been distributing it as a "fat-jar" with all dependencies contained in one executable file. </p>
  
  <p>I have been reading a bit about software licensing, and realized that it might be legally tricky to do so without paying quite a bit of attention to individual licenses of libraries. I've gone through a number of questions here on StackOverflow (a thorough collection below) but ended up getting more and more confused. <strong>Please note that I am fully aware that there are many other questions about software licensing however not in the context of self-contained packages, I have listed many great questions below which provide a bit of the puzzle but not a straight-forward answer in my scenario.</strong></p>
  
  <p>I would greatly appreciate if developers who are more experienced/well-read on the matter could shed some light to the matter by confirming or denying the statements below. I think it could be useful for people who are not programmers but profession but are getting more and more into programming. My understanding is:</p>
  
  <ul>
  <li><p>As long as you do not re-distribute your dependencies, it doesn't really matter what licenses they have, compared with what license you choose for your own project. [Unfortunately going this way would also mean that I would alienate/intimidate a significant portion of my userbase]</p></li>
  <li><p>If you are re-distributing all your dependencies then your project license should be compatible with your dependencies. [Thus I as a developer have to know details of licenses for each dependency??]</p></li>
  <li><p>GPL is the most strict open source license out there (from the common ones), thus if I use a library under GPL license, my own project has to be under GPL as well, which could in theory be contradicting with the license of some other dependency.</p></li>
  <li><p>Assuming my project is under GPL, the fact that the project is non-commercial doesn't matter, it also has to be open source. [This is rather tricky in my situation as algorithms and computational methods need to be "novel" to be published]</p></li>
  </ul>
  
  <p>Have I misunderstood or simply missed something important or is this a good summary of the situation? Given my situation, do I have other options that I might not have mentioned here/thought of, for instance would it be possible to avoid issues regarding licenses for my dependencies?</p>
  
  <hr>
  
  <p>References:</p>
  
  <p><a href="https://stackoverflow.com/q/4419358/328725">Should I be concerned with large number of dependencies?</a></p>
  
  <p><a href="https://stackoverflow.com/q/4775488/328725">Which licences are compatible with each other?</a></p>
  
  <p><a href="https://stackoverflow.com/questions/458479/where-can-i-find-an-authoritative-overview-of-open-source-licences">Where can I find an authoritative overview of open source licences?</a></p>
  
  <p><a href="https://stackoverflow.com/q/41898/328725">How do you choose an open-source license?</a></p>
  
  <p><a href="https://stackoverflow.com/q/1874956/328725">Searching for non-commercial license for source code</a></p>
  
  <p><a href="https://stackoverflow.com/q/141605/328725">Is it legal way to get use GPL code in close-source application through plugin?</a></p>
  
  <p><a href="https://stackoverflow.com/q/137048/328725">How do I tell if I can re-use a 'free' software library in a commercial app? [closed]</a></p>
  
  <p><a href="https://stackoverflow.com/q/2468566/328725">Correctly Applying an Open Source License</a> (in particular <a href="https://stackoverflow.com/a/2468663/328725">this answer</a> by @Michael Aaron Safyan)</p>
  
  <p><a href="https://stackoverflow.com/q/2303136/328725">How do I find the open source license that is right for my project?</a></p>
  
  <p><a href="https://stackoverflow.com/q/241540/328725">How to use an Open Source License</a></p>
  
  <p><a href="https://stackoverflow.com/q/41898/328725">How do you choose an open-source license?</a></p>