
You can treat JLIS as a java replacement of SVM Struct, though the internal optimization is quite different.
Based on JLIS, the JLIS-multiclass package supports performing cost-sensitive multiclass classification.
Based on JLIS, the JLIS-reranking package supports using the performance measure (e.g. F1) to do "weighted" reranking.