... because it uses the "oscorespls" algorithm, which is prone to numerical instability. The pls package paper mentions that the "kernelpls" algorithm gives the same result and is usually faster. I suggest changing it here.
library(fastICA)
> dm <- fastICA(matrix(runif(6000), ncol=6), 6, method="C")$S
> mkt <- makeClassifTask("orthotask", data.frame(t=sample(factor(c('a', 'b')), 1000, replace=TRUE), dm), target='t')
> train(makeLearner('classif.plsdaCaret'), mkt) # runs forever