Smack build


What is the current build procedure for smack universe and child artifacts (smack+smackx)?
I am trying to build from source and was not really sure which source repo to build and how.


The smack related stuff comes from this branch


Cool, 10x for the reply.
So what needs to be done? What should be checked out and what is the command line to build only smack + smackx ?


That branch is not using custom smack or smackx, it uses smack 4.2.1.


Sorry… Let me rephrase:
if I want to build jitsi-videobridge from source (for example current master tip),
do I need to check out the smack branch you pointed to in order to build all the required the smack dependencies?

to be more specific :

this is the maven resolve output grepped for smack (“mvn dependency:resolve”):

[INFO] org.igniterealtime.smack:smack-core:jar:4.2.2-b1c107f:compile
[INFO] org.igniterealtime.smack:smack-bosh:jar:4.2.1:compile
[INFO] org.igniterealtime.smack:smack-tcp:jar:4.2.2-b1c107f:compile
[INFO] org.igniterealtime.smack:smack-debug:jar:4.2.1:compile
[INFO] org.igniterealtime.smack:smack-extensions:jar:4.2.2-b1c107f:compile
[INFO] org.jitsi:jnsapi:jar:0.0.3-jitsi-smack4.2-3:compile
[INFO] org.igniterealtime.smack:smack-java7:jar:4.2.1:compile
[INFO] org.igniterealtime.smack:smack-im:jar:4.2.2-b1c107f:compile
[INFO] org.igniterealtime.smack:smack-resolver-javax:jar:4.2.1:compile
[INFO] org.igniterealtime.smack:smack-experimental:jar:4.2.1:compile
[INFO] org.igniterealtime.smack:smack-sasl-javax:jar:4.2.1:compile
[INFO] org.igniterealtime.smack:smack-legacy:jar:4.2.1:compile

and it looks like more than one version found it’s way in, e.g.:


To build jvb from source, you only need to check out jvb source code and build. It will download the required dependencies.


understood, but what I am trying to do is build the videobridge along with all artifacts it depends on - including all smack* for example…


Then you need to checkout jitsi and branch smack-4.2 go into folder m2 and do mvn install. If you want to build smack, currently that branch uses smack 4.2.1, go and checkout smack and check their build process.


10x, will give that a go


hunting for that 4.2.2 snapshot (b1c107f) i found :

which if i am not mistaken looks like source branch is actually on the jitsi fork repo

and on another branch (4.2.2-jitsi) like, here:

and that looks like a gradle build…
is that correct?


Hi Damian, I would appreciate a reply, 10x :slight_smile:


Yes that is a jitsi fork of smack, all the changes are pushed as PRs to smack repo and accepted, but not back-ported to older versions, that’s why for some we have such forking, but they are not too far away from upstream.
It is a gradle build but in the first commit you mention I had added the steps we used to push the versions to our maven repo.