Git Product home page Git Product logo

zhenhuihe / openfire Goto Github PK

View Code? Open in Web Editor NEW

This project forked from igniterealtime/openfire

0.0 1.0 0.0 827.92 MB

A XMPP server licensed under the Open Source Apache License.

Home Page: https://www.igniterealtime.org/projects/openfire/

License: Apache License 2.0

Dockerfile 0.01% Makefile 0.01% Shell 0.24% C 0.02% Objective-C 0.04% Batchfile 0.02% HTML 5.84% Java 70.14% JavaScript 20.87% CSS 2.81% PLSQL 0.01%

openfire's Introduction

Openfire alt tag

Build Status Project Stats

About

Openfire is a real time collaboration (RTC) server licensed under the Open Source Apache License. It uses the only widely adopted open protocol for instant messaging, XMPP (also called Jabber). Openfire is incredibly easy to setup and administer, but offers rock-solid security and performance.

Openfire is a XMPP server licensed under the Open Source Apache License.

Openfire - an Ignite Realtime community project.

Bug Reporting

Only a few users have access for for filling bugs in the tracker. New users should:

  1. Create a Discourse account
  2. Login to a Discourse account
  3. Click on the New Topic button
  4. Choose the Openfire Dev category and provide a detailed description of the bug.

Please search for your issues in the bug tracker before reporting.

Resources

Ignite Realtime

Ignite Realtime is an Open Source community composed of end-users and developers around the world who are interested in applying innovative, open-standards-based Real Time Collaboration to their businesses and organizations. We're aimed at disrupting proprietary, non-open standards-based systems and invite you to participate in what's already one of the biggest and most active Open Source communities.

Making changes

The project uses Maven and as such should import straight in to your favourite Java IDE. The directory structure is fairly straightforward. The code is contained in two key folders:

  • Openfire/xmppserver - a Maven module representing the core code for Openfire itself
  • Openfire/plugins - a number of modules for the various plugins available

Other folders are:

  • Openfire/build - various files use to create installers for different platforms
  • Openfire/distribution - a Maven module used to bring all the parts together
  • Openfire/documentation - the documentation hosted at igniterealtime.org
  • Openfire/i18n - files used for internationalisation of the admin interface
  • Openfire/starter - a small module that allows Openfire to start in a consistent manner on different platforms

To build the complete project including plugins, run the command

mvn verify

However much of the time it is only necessary to make changes to the core XMPP server itself in which case the command

mvn verify -pl distribution -am 

will compile the core server and any dependencies, and then assemble it in to something that can be run.

Testing your changes

Although your IDE will happily compile the project unfortunately, it's not possible to run Openfire from within an IDE - it must be done at the command line. After building the project using Maven, simply run the shell script or batch file to start Openfire;

./distribution/target/distribution-base/bin/openfire.sh

or

.\distribution\target\distribution-base\bin\openfire.bat

Adding -debug as the first parameter to the script will start the server in debug mode, and your IDE should be able to attach a remote debugger if necessary.

Compiling a plugin

Compiling the complete project will build all the plugins - however to test changes to a plugin it's often quicker to compile an individual plugin by specifing the pom.xml for that plugin, for example;

mvn verify -f plugins/broadcast/pom.xml

openfire's People

Contributors

aberenguel avatar ajagucki avatar akrherz avatar alexwen avatar annovanvliet avatar billjive avatar bsherman avatar danielhams avatar dwd avatar fank avatar flowdalic avatar gguardin avatar godly avatar gregdthomas avatar guusdk avatar hdeadman avatar ishmakov avatar ivan4537 avatar jadestorm avatar leonroy avatar marclaporte avatar pgoski avatar redor avatar ryantgraham avatar sco0ter avatar slushpupie avatar speedy01 avatar tevans avatar trumpetx avatar wrooot avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.