1. A computer system including instructions recorded on a non-transitory computer-readable medium and executable by at least one processor, the system comprising: a conflict resolution manager configured to cause the at least one processor to manage software component dependencies for applications using declarative constraint definitions, the conflict resolution manager including: a component analyzer configured to analyze and detect direct and transitive software component dependencies on one or more libraries; a constraint checker configured to enable specification of constraint definitions using a declarative language, and to identify and check software component dependencies for one or more libraries that violate the constraint definitions; an optimizer configured to implement an algorithm for analyzing applications and resolving software component dependencies on the one or more libraries that violate the constraint definitions; and a storage handler configured to access a database and store information related to the constraint definitions, the software component dependencies, and the algorithm for analyzing applications and resolving software component dependencies.