The paper addresses the maximal lifetime problem in sensor-target surveillance networks. Given a set of sensors and targets in an Euclidean plane, each sensor can watch all targets within its surveillance range and each target should be watched by at least one sensor at any time. The problem is to schedule the sensors to watch the targets and forward the sensed data to the base station, such that the lifetime of the surveillance network is maximized, where the lifetime is the duration that all targets are watched and all active sensors are connected to the base station. We propose an optimal solution to achieve the maximal lifetime. Our solution consists of three steps: 1) compute the maximal lifetime of the surveillance network and find a workload matrix and data flows by using the linear programming technique; 2) decompose the workload matrix into a sequence of schedule matrices by using the perfect matching technique; 3) determine the sensor-target surveillance trees based on the above obtained schedule matrices and data flows, which specify the active sensors and the routes to pass sensed data to the base station. The proposed optimal solution is illustrated by a numeric example.