2010-02-18 13 views

Respuesta

8

@(#) es la cadena de caracteres utilizada por el comando Unix what para filtrar cadenas de binarios y enumerar los componentes que se usaron para compilar ese binario. Por ejemplo what java en los rendimientos de AIX:

java: 
     23 1.4 src/bos/usr/ccs/lib/libpthreads/init.c, libpth, bos520 8/19/99 12:20:14 
     61  1.14 src/bos/usr/ccs/lib/libc/__threads_init.c, libcthrd, bos520 7/11/00 12:04:14 
     src/tools/sov/java.c, tool, asdev, 20081128 1.83.1.36 
     src/misc/sov/copyrght.c, core, asdev, 20081128 1.8 

mientras que `cuerdas java | grep '@ (#)' rendimientos:

@(#)23 1.4 src/bos/usr/ccs/lib/libpthreads/init.c, libpth, bos520 8/19/99 12:20:14 
@(#)61  1.14 src/bos/usr/ccs/lib/libc/__threads_init.c, libcthrd, bos520 7/11/00 12:04:14 
@(#)src/tools/sov/java.c, tool, asdev, 20081128 1.83.1.36 
@(#)src/misc/sov/copyrght.c, core, asdev, 20081128 1.8 

@(#) fue elegido como marcador, ya que no se produciría en otro lugar, el código fuente controla sistemas suelen añadir una línea que contiene este marcador y la descripción de la versión del archivo de la sincronización, la expansión palabras clave con valores que reflejan el contenido del archivo. Por ejemplo, el comentario que liste sería el resultado de expandir las palabras clave SCCS %Z% %M% %R%.%L% %E% donde el %Z% se traduce en @(#).

1

Por lo general, es algo que se agrega automáticamente por el sistema de control de versiones.

1

Esa construcción no tiene ningún significado especial en Java. Es solo un texto en un comentario.

Parece algo insertado por un sistema de control de versiones.

2

Desde (brumoso) memoria, esa fue la etiqueta utilizada por SCCS en los "buenos viejos tiempos". Dado que (que yo sepa), BitKeeper utiliza SCCS por debajo, podría ser BitKeeper.