<!DOCTYPE html> <!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]--> <!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]--> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Setting Up Your Project — Sponge 6.0.0 documentation</title> <link rel="shortcut icon" href="../../_static/favicon.ico"/> <link rel="stylesheet" href="../../_static/css/theme.css" type="text/css" /> <link rel="stylesheet" href="../../_static/spongedocs.css" type="text/css" /> <link rel="index" title="Index" href="../../genindex.html"/> <link rel="search" title="Search" href="../../search.html"/> <link rel="top" title="Sponge 6.0.0 documentation" href="../../index.html"/> <link rel="up" title="Creating a Plugin" href="../index.html"/> <link rel="next" title="Setting Up Gradle" href="gradle.html"/> <link rel="prev" title="Setting Up Eclipse" href="../workspace/eclipse.html"/> <!-- Google Analytics --> <script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-59476017-2', 'auto'); ga('send', 'pageview'); </script> <script src="../../_static/js/modernizr.min.js"></script> </head> <body class="wy-body-for-nav" role="document"> <div class="wy-grid-for-nav"> <nav data-toggle="wy-nav-shift" class="wy-nav-side"> <div class="wy-side-scroll"> <div class="wy-side-nav-search"> <div id="sp-logo-container" class="page-scroll"> <a class="logo" href="../../index.html"> <img src="../../_static/spongie-mark-dark.svg"> <span>Sponge</span> <i class="fa fa-fw fa-chevron-down"></i> </a> <div id="sp-logo-menu"> <ul id="sp-logo-dropdown"> <li><a href="https://www.spongepowered.org"><i class="fa-fw fa fa-home"></i>Homepage</a></li> <li><a href="https://forums.spongepowered.org"><i class="fa-fw fa fa-comments"></i>Forums</a></li> <li><a href="https://github.com/SpongePowered"><i class="fa-fw fa fa-code"></i>Code</a></li> <li class="active"><a href="https://docs.spongepowered.org"><i class="fa-fw fa fa-book"></i>Docs</a></li> <li><a href="https://jd.spongepowered.org"><i class="fa-fw fa fa-graduation-cap"></i>Javadocs</a></li> <li><a href="https://forums.spongepowered.org/c/plugins/plugin-releases"><i class="fa-fw fa fa-plug"></i>Plugins</a></li> <li><a href="https://www.spongepowered.org/downloads"><i class="fa-fw fa fa-download"></i>Downloads</a></li> <li><a href="https://www.spongepowered.org/chat"><i class="fa-fw fa fa-comment"></i>Chat</a></li> </ul> </div> </div> <div role="search"> <form id="rtd-search-form" class="wy-form" action="../../search.html" method="get"> <input type="text" name="q" placeholder="Search docs" /> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> </div> </div> <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation"> <ul> <li class="toctree-l1"><a class="reference internal" href="../../server/index.html">Creating a Server</a></li> </ul> <ul> <li class="toctree-l1"><a class="reference internal" href="../../preparing/index.html">Preparing for Development</a></li> </ul> <ul class="current"> <li class="toctree-l1 current"><a class="reference internal" href="../index.html">Creating a Plugin</a><ul class="current"> <li class="toctree-l2"><a class="reference internal" href="../buildsystem.html">Build Systems</a></li> <li class="toctree-l2"><a class="reference internal" href="../workspace/index.html">Setting Up Your Workspace</a></li> <li class="toctree-l2 current"><a class="current reference internal" href="#">Setting Up Your Project</a><ul> <li class="toctree-l3"><a class="reference internal" href="gradle.html">Setting Up Gradle</a></li> <li class="toctree-l3"><a class="reference internal" href="maven.html">Setting Up Maven</a></li> </ul> </li> <li class="toctree-l2"><a class="reference internal" href="../plugin-identifier.html">Plugin Identifiers</a></li> <li class="toctree-l2"><a class="reference internal" href="../plugin-class.html">Main Plugin Class</a></li> <li class="toctree-l2"><a class="reference internal" href="../lifecycle.html">Plugin Lifecycle</a></li> <li class="toctree-l2"><a class="reference internal" href="../injection.html">Dependency Injection</a></li> <li class="toctree-l2"><a class="reference internal" href="../practices/index.html">Practices</a></li> <li class="toctree-l2"><a class="reference internal" href="../optional/index.html">Optionals</a></li> <li class="toctree-l2"><a class="reference internal" href="../logging.html">Logging and Debugging</a></li> <li class="toctree-l2"><a class="reference internal" href="../commands/index.html">Commands</a></li> <li class="toctree-l2"><a class="reference internal" href="../event/index.html">Events</a></li> <li class="toctree-l2"><a class="reference internal" href="../assets.html">The Asset API</a></li> <li class="toctree-l2"><a class="reference internal" href="../configuration/index.html">Configuring Plugins</a></li> <li class="toctree-l2"><a class="reference internal" href="../text/index.html">Text</a></li> <li class="toctree-l2"><a class="reference internal" href="../data/index.html">The Data API</a></li> <li class="toctree-l2"><a class="reference internal" href="../blocks/index.html">Blocks</a></li> <li class="toctree-l2"><a class="reference internal" href="../entities/index.html">Entities</a></li> <li class="toctree-l2"><a class="reference internal" href="../items/index.html">Items</a></li> <li class="toctree-l2"><a class="reference internal" href="../trade-offers.html">Trade-Offers</a></li> <li class="toctree-l2"><a class="reference internal" href="../effects.html">Effects</a></li> <li class="toctree-l2"><a class="reference internal" href="../scheduler.html">Scheduler</a></li> <li class="toctree-l2"><a class="reference internal" href="../services.html">Services</a></li> <li class="toctree-l2"><a class="reference internal" href="../database.html">Databases</a></li> <li class="toctree-l2"><a class="reference internal" href="../permissions.html">Permissions</a></li> <li class="toctree-l2"><a class="reference internal" href="../bans.html">Bans</a></li> <li class="toctree-l2"><a class="reference internal" href="../bookview.html">Book Views</a></li> <li class="toctree-l2"><a class="reference internal" href="../economy/index.html">Economy</a></li> <li class="toctree-l2"><a class="reference internal" href="../wgen/index.html">World Generation</a></li> <li class="toctree-l2"><a class="reference internal" href="../manager.html">Plugin Manager</a></li> <li class="toctree-l2"><a class="reference internal" href="../game-profile-manager.html">Game Profile Manager</a></li> <li class="toctree-l2"><a class="reference internal" href="../offline-userplayer-data.html">Offline Player Data</a></li> <li class="toctree-l2"><a class="reference internal" href="../debugging.html">Plugin Debugging</a></li> <li class="toctree-l2"><a class="reference internal" href="../tab-lists.html">Tab Lists</a></li> <li class="toctree-l2"><a class="reference internal" href="../plugin-meta.html">Plugin Metadata</a></li> <li class="toctree-l2"><a class="reference internal" href="../ray-tracing.html">Ray Tracing</a></li> <li class="toctree-l2"><a class="reference internal" href="../tutorials.html">Tutorials</a></li> <li class="toctree-l2"><a class="reference internal" href="../internals/index.html">Implementation-dependent Plugins</a></li> </ul> </li> </ul> <ul> <li class="toctree-l1"><a class="reference internal" href="../../ore/index.html">Ore Documentation</a></li> </ul> <ul> <li class="toctree-l1"><a class="reference internal" href="../../contributing/index.html">Contributing to Sponge</a></li> </ul> <ul> <li class="toctree-l1"><a class="reference internal" href="../../about/index.html">About the Sponge Project</a></li> </ul> </div> </div> </nav> <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"> <nav class="wy-nav-top" role="navigation" aria-label="top navigation"> <i data-toggle="wy-nav-top" class="fa fa-bars"></i> <a href="../../index.html">Sponge</a> </nav> <div class="wy-nav-content"> <div class="rst-content"> <div role="navigation" aria-label="breadcrumbs navigation"> <ul class="wy-breadcrumbs"> <li><a href="../../index.html">Docs</a> »</li> <li><a href="../index.html">Creating a Plugin</a> »</li> <li>Setting Up Your Project</li> <li class="wy-breadcrumbs-aside"> <a href="https://github.com/SpongePowered/SpongeDocs/blob/BestPractises/source/plugin/project/index.rst" class="fa fa-github"> Edit on GitHub</a> </li> </ul> <hr/> </div> <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> <div itemprop="articleBody"> <div class="section" id="setting-up-your-project"> <h1>Setting Up Your Project<a class="headerlink" href="#setting-up-your-project" title="Permalink to this headline">¶</a></h1> <p>Before you can start developing your Sponge plugin, you need to set up the SpongeAPI dependency in your project. If you’re already experienced with your build system, below is the Maven dependency you need to add. Otherwise, there is a more detailed explanation at the <a class="reference internal" href="gradle.html"><span class="doc">Gradle</span></a> and <a class="reference internal" href="maven.html"><span class="doc">Maven</span></a> page.</p> <div class="section" id="spongeapi-dependency"> <h2>SpongeAPI dependency<a class="headerlink" href="#spongeapi-dependency" title="Permalink to this headline">¶</a></h2> <div class="section" id="maven-repository"> <h3>Maven repository<a class="headerlink" href="#maven-repository" title="Permalink to this headline">¶</a></h3> <table border="1" class="docutils"> <colgroup> <col width="9%" /> <col width="91%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>Name</td> <td><code class="docutils literal"><span class="pre">sponge</span></code></td> </tr> <tr class="row-even"><td>URL</td> <td><code class="docutils literal"><span class="pre">https://repo.spongepowered.org/maven</span></code></td> </tr> </tbody> </table> </div> <div class="section" id="maven-dependency"> <h3>Maven dependency<a class="headerlink" href="#maven-dependency" title="Permalink to this headline">¶</a></h3> <table border="1" class="docutils"> <colgroup> <col width="15%" /> <col width="85%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>Group ID</td> <td><code class="docutils literal"><span class="pre">org.spongepowered</span></code></td> </tr> <tr class="row-even"><td>Artifact ID</td> <td><code class="docutils literal"><span class="pre">spongeapi</span></code></td> </tr> <tr class="row-odd"><td>Version</td> <td>For example: <code class="docutils literal"><span class="pre">6.0.0</span></code> (stable), or <code class="docutils literal"><span class="pre">7.0.0-SNAPSHOT</span></code> (dev build, unstable)</td> </tr> </tbody> </table> </div> </div> <div class="section" id="id1"> <h2>Setting Up Your Project<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h2> <div class="toctree-wrapper compound"> <ul> <li class="toctree-l1"><a class="reference internal" href="gradle.html">Setting Up Gradle</a></li> <li class="toctree-l1"><a class="reference internal" href="maven.html">Setting Up Maven</a></li> </ul> </div> </div> </div> </div> </div> <footer> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <a href="gradle.html" class="btn btn-neutral float-right" title="Setting Up Gradle" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a> <a href="../workspace/eclipse.html" class="btn btn-neutral" title="Setting Up Eclipse" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a> </div> <hr/> <div role="contentinfo"> <p>© Copyright 2014-2017, Sponge Contributors. </p> </div>Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. </footer> </div> </div> </section> </div> <div class="rst-versions" data-toggle="rst-versions" role="note" aria-label="versions"> <span class="rst-current-version" data-toggle="rst-current-version"> <i class="fa fa-book"> <span>SpongeDocs</span></i> v: 6.0.0 <span class="fa fa-caret-down"></span> </span> <div id="versions" class="rst-other-versions"> <dl> <dt>Contribute</dt> <dd><a href="https://github.com/SpongePowered/SpongeDocs/blob/BestPractises/source/plugin/project/index.rst">Source</a></dd> <dd><a href="https://github.com/SpongePowered/SpongeDocs/edit/BestPractises/source/plugin/project/index.rst">Edit</a></dd> </dl> </div> </div> <script type="text/javascript"> var DOCUMENTATION_OPTIONS = { URL_ROOT:'../../', VERSION:'6.0.0', COLLAPSE_INDEX:false, FILE_SUFFIX:'.html', HAS_SOURCE: true }; </script> <script type="text/javascript" src="../../_static/jquery.js"></script> <script type="text/javascript" src="../../_static/underscore.js"></script> <script type="text/javascript" src="../../_static/doctools.js"></script> <script type="text/javascript" src="../../_static/spongedocs.js"></script> <script type="text/javascript" src="../../_static/js/theme.js"></script> <script type="text/javascript"> jQuery(function () { SphinxRtdTheme.StickyNav.enable(); }); </script> </body> </html>