Rust's try macro will automatically use any available conversions when moving exceptions up the chain, so if you want to wrap exception A in B this can be done without pain. Rust also relegates a lot of what would have been exceptions in Java to panics, so that things like logic errors or issues with arguments can be kept from complicating error handling.
These alleviate a lot of what made Java's checked exceptions so unhelpful, so I don't think you can really conflate the two.
These alleviate a lot of what made Java's checked exceptions so unhelpful, so I don't think you can really conflate the two.