Sachverhalt:
A.
Die IV-Stelle des Kantons St. Gallen sprach dem 1964 geborenen A._ mit Verfügung vom 10. Dezember 1999 eine halbe Invalidenrente ab 1. April 1998 zu. Mit Mitteilungen vom 12. Februar 2001, 2. März 2004 und 8. Januar 2008 bestätigte sie jeweils einen unveränderten Anspruch. Im Januar 2013 leitete die Verwaltung erneut ein Revisionsverfahren ein. Mit Verfügung vom 28. August 2013 hob sie die Rente auf. In Gutheissung der dagegen erhobenen Beschwerde hob das Versicherungsgericht des Kantons St. Gallen die Verfügung vom 28. August 2013 auf und wies die Sache zu neuem Entscheid an die IV-Stelle zurück (Entscheid vom 9. April 2014). Diese hob die Rente nach weiteren Abklärungen und Durchführung des Vorbescheidverfahrens mit Verfügung vom 28. Mai 2015 auf Ende Juni 2015 auf.
B.
Die dagegen erhobene Beschwerde wies das Versicherungsgericht des Kantons St. Gallen mit Entscheid vom 3. August 2017 ab.
C.
A._ lässt mit Beschwerde in öffentlich-rechtlichen Angelegenheiten beantragen, unter Aufhebung des Entscheids vom 3. August 2017 und der Verfügung vom 28. Mai 2015 sei die IV-Stelle zu verpflichten, ihm weiterhin eine halbe Invalidenrente auszurichten.

Erwägungen:
1.
Mit der Beschwerde in öffentlich-rechtlichen Angelegenheiten kann u.a. die Verletzung von Bundesrecht gerügt werden (<ref-law>). Die Feststellung des Sachverhalts kann nur gerügt werden, wenn sie offensichtlich unrichtig ist oder auf einer Rechtsverletzung im Sinne von Art. 95 beruht und wenn die Behebung des Mangels für den Ausgang des Verfahrens entscheidend sein kann (<ref-law>). Das Bundesgericht legt seinem Urteil den Sachverhalt zu Grunde, den die Vorinstanz festgestellt hat (<ref-law>). Es kann die Sachverhaltsfeststellung der Vorinstanz von Amtes wegen berichtigen oder ergänzen, wenn sie offensichtlich unrichtig ist oder auf einer Rechtsverletzung im Sinne von Art. 95 beruht (<ref-law>). Eine Sachverhaltsfeststellung ist nicht schon dann offensichtlich unrichtig, wenn sich Zweifel anmelden, sondern erst, wenn sie eindeutig und augenfällig unzutreffend ist (<ref-ruling> E. 3.1 S. 44). Es liegt noch keine offensichtliche Unrichtigkeit vor, nur weil eine andere Lösung ebenfalls in Betracht fällt, selbst wenn diese als die plausiblere erscheint (vgl. <ref-ruling> E. 2.1 S. 9; Urteil 9C_101/2015 vom 30. November 2015 E. 1.1).
2.
Die Vorinstanz hat dem Gutachten des Ärztlichen Begutachtungsinstitutes (ABI) vom 27. Januar 2015 Beweiskraft beigemessen und gestützt darauf eine uneingeschränkte Arbeitsfähigkeit in leidensangepassten Tätigkeiten festgestellt. Weiter ist sie von einem Leiden im Sinne der Schlussbestimmungen der Änderung des IVG vom 18. März 2011 (6. IV-Revision, erstes Massnahmenpaket; nachfolgend: SchlBest.; AS 2011 5670 f.) ausgegangen. Den Invaliditätsgrad hat sie auf höchstens 35 % festgelegt. Folglich hat sie die Rentenaufhebung bestätigt.
Streitig und zu prüfen ist einzig, ob die Rentenaufhebung mit Blick auf die SchlBest. zulässig ist.
3.
3.1. Renten, die bei pathogenetisch-ätiologisch unklaren syndromalen Beschwerdebildern ohne nachweisbare organische Grundlage gesprochen wurden, werden innerhalb von drei Jahren nach Inkrafttreten dieser Änderung überprüft. Sind die Voraussetzungen nach Artikel 7 ATSG nicht erfüllt, so wird die Rente herabgesetzt oder aufgehoben, auch wenn die Voraussetzungen von Artikel 17 Absatz 1 ATSG nicht erfüllt sind (lit. a Abs. 1 SchlBest.). Diese Bestimmung findet keine Anwendung auf Personen, die im Zeitpunkt des Inkrafttretens dieser Änderung das 55. Altersjahr zurückgelegt haben oder im Zeitpunkt, in dem die Überprüfung eingeleitet wird, seit mehr als 15 Jahren eine Rente der Invalidenversicherung beziehen (lit. a Abs. 4 SchlBest.).
Vom Anwendungsbereich des lit. a Abs. 1 SchlBest. IVG sind laufende Renten nur auszunehmen, wenn und soweit sie auf erklärbaren Beschwerden beruhen. Lassen sich solche von unklaren Beschwerden trennen, können die SchlBest. auf letztere Anwendung finden (<ref-ruling> E. 6.2.3 S. 200).
3.2.
3.2.1. Der Beschwerdeführer macht geltend, dass er zum "Zeitpunkt, in dem die Überprüfung eingeleitet" wurde, die Rente bereits länger als 15 Jahre bezogen habe.
3.2.2. Wohl ist der Beginn des Rentenanspruchs Ausgangspunkt für die Dauer des Rentenbezugs (<ref-ruling> E. 5.2 S. 17; <ref-ruling> E. 4.3 S. 450), weshalb in concreto eine Rentenaufhebung gestützt auf lit. a Abs. 1 SchlBest. unzulässig ist, wenn die Überprüfung des Rentenanspruchs erst nach dem 31. März 2013 eingeleitet wurde. Aus dem Revisionsfragebogen, den der Versicherte mit dem 21. Januar 2013 datierte, geht indessen klar hervor, dass die Verwaltung die Überprüfung bereits im Januar 2013 einleitete. Anders als der Beschwerdeführer und das kantonale Gericht anzunehmen scheinen, ist in dieser Konstellation nicht von Belang, unter welchem Titel die Verwaltung später die Rente anzupassen resp. aufzuheben gedenkt. Nach gefestigter Rechtsprechung kann denn auch eine Beschwerdeinstanz eine revisions- oder wiedererwägungsweise (vgl. Art. 17 Abs. 1 sowie Art. 53 Abs. 1 und 2 ATSG) verfügte Rentenherabsetzung resp. -aufhebung erstmals gestützt auf lit. a Abs. 1 SchlBest. schützen, sofern die entsprechenden Voraussetzungen erfüllt sind (Urteil 9C_800/2016 vom 9. Mai 2017 E. 2 mit Hinweisen). Weshalb es mit Blick auf die SchlBest. der Einleitung eines "neuen" spezifischen Überprüfungsverfahrens bedürfen sollte, leuchtet nicht ein und wird auch in der Beschwerde nicht dargelegt. Aus der Rechtsprechung von <ref-ruling> E. 5.3 S. 18 ff., wonach bei Revisionsverfahren, welche noch vor Inkrafttreten der 6. IV-Revision eingeleitet wurden, der 1. Januar 2012 fiktiven Anknüpfungspunkt für die Ermittlung der massgebenden Rentenbezugsdauer bildet, lässt sich nichts zu Gunsten des Beschwerdeführers ableiten. Die Vorinstanz ist im Ergebnis zu Recht davon ausgegangen, dass die Rentenüberprüfung vor Ablauf der 15-jährigen Rentenbezugsdauer eingeleitet wurde.
3.3.
3.3.1. Weiter rügt der Beschwerdeführer, aufgrund der somatischen Einschränkungen im Revisionszeitpunkt seien die SchlBest. nicht anwendbar, und das kantonale Gericht habe das entsprechende Vorbringen nicht geprüft.
3.3.2. Die Vorinstanz befasste sich in E. 3.2 des angefochtenen Entscheids mit der Zulässigkeit der Rentenrevision nach lit. a Abs. 1 SchlBest. im Hinblick auf den Gesundheitszustand insbesondere bei Erlass der angefochtenen Verfügung (vgl. <ref-ruling> E. 10.1.2 S. 569), und diesbezüglich war auch eine sachgerechte Anfechtung möglich. Daher kann von einer Verletzung des Anspruchs auf rechtliches Gehör keine Rede sein (vgl. <ref-ruling> E. 4.3.2 S. 436 mit Hinweisen).
Im hier interessierenden Zusammenhang hat das kantonale Gericht festgestellt, dass die somatischen Befunde (multiple muskuläre Verkürzungen im Becken- und Beinbereich) weder bei der Zusprache noch bei der Aufhebung der Rente einen Einfluss auf die Arbeitsfähigkeit in angepassten Tätigkeiten hatten. Inwiefern diese Feststellung offensichtlich unrichtig sein oder auf einer Rechtsverletzung beruhen soll, ist nicht ersichtlich und wird auch nicht dargelegt, weshalb sie für das Bundesgericht verbindlich bleibt (E. 1). Da die somatischen Befunde folglich auch für den Rentenanspruch nie von Relevanz waren, stehen sie der Anwendung der SchlBest. nicht entgegen (vgl. E. 3.1). Die Beschwerde ist auch in diesem Punkt unbegründet.
4.
Dem Ausgang des Verfahrens entsprechend hat der Beschwerdeführer die Kosten zu tragen (<ref-law>).

Demnach erkennt das Bundesgericht:
1.
Die Beschwerde wird abgewiesen.
2.
Die Gerichtskosten von Fr. 800.- werden dem Beschwerdeführer auferlegt.
3.
Dieses Urteil wird den Parteien, dem Versicherungsgericht des Kantons St. Gallen und dem Bundesamt für Sozialversicherungen schriftlich mitgeteilt.
Luzern, 27. Dezember 2017
Im Namen der II. sozialrechtlichen Abteilung
des Schweizerischen Bundesgerichts
Das präsidierende Mitglied: Meyer
Die Gerichtsschreiberin: Dormann