James R. N. Weaver was born in Fremont, Ohio on May 20, 1888.[3][4] He attended Fremont High School, where he was president and valedictorian of the Class of 1906.[5]
After commissioning, Weaver served with the 9th Infantry and the 8th Infantry in the Philippines and on the Mexican border near Laredo, Texas. He was promoted to captain in May 1917.[3]
During World War I, Weaver received a temporary promotion to major in June 1918 and briefly commanded a battalion of the 333rd Infantry, 84th DivisionatCamp Mills on Long Island in August 1918.[3] His promotion to major expired in March 1920 and then was made permanent in June 1920.[6]
Weaver served at Fort McKinley in Maine from 1930 to 1932 and commanded the 3rd Battalion, 5th Infantry. He later served at Fort Benning in Georgia from 1937 to 1940, attending the Infantry School tank course and commanding the 2nd Battalion, 66th Infantry (Light Tanks). Weaver was promoted to lieutenant colonel in August 1935 and colonel in May 1940.[7]
Weaver served as commander of the 68th Armored Regiment, 2nd Armored Division at Fort Benning from July 1940 to October 1941. He briefly served as acting commander of the division in June and October 1941 during the absence of the commanding general, George S. Patton. Weaver was sent to the Philippines in November 1941, where he organized and took command of the Provisional Tank Group. He received a temporary promotion to brigadier general in December 1941.[8] Weaver was captured by Japanese forces on the Bataan peninsula in April 1942 and then remained a prisoner of war until liberated from Hoten Camp in Manchuria by Russian forces in August 1945.[5]
After the war, Weaver served in California, commanding Fort Ord in 1946 and then Camp Beale until June 1947. He retired from active duty as a brigadier general on 31 May 1948.[8]