A que terminal vas? En la 2 (antigua) hay el tren que te deja en sants y luego puedes coger el metro.
Des del aeropuerto hay un bus, el 46 que te deja en Plaza España, otra opción es el aerobus Sólo usuarios registrados pueden ver links. Por favor, regístrate en el foro haciendo click AQUI.
Te deja en plaza españa o en plaza cataluña, desde ahí podrías coger el metro la línea 3 (verde) y bajar en la parada Drassanes.
Otra opción es directamente coger el taxi, si no hay tráfico no debe tardar demasiado ya que es coger la autovía de castelldefels y luego la ronda litoral, pero imagino que los 25 euros por el trayecto te los dejas seguro.